2009-03-11 3 views
0

Je reçois une erreur javascript particulière avec IE. J'ai un panneau de mise à jour, et à l'intérieur une liste déroulante. Quand je change la valeur de la liste déroulante, elle me donne l'erreur "Ligne: 5 '__EVENTTARGET' est nul ou pas un objet." J'ai jeté un coup d'oeil, et cette ligne 5 et __EVENTTARGET sont dans le code javascript généré ASP.NETASP DropDownList UpdatePanel IE erreurs JS

.

Je veux un dropdownlist qui se déclenche lorsque la méthode nouvelle option sélectionnée, sans scintillement page

Voici une partie de mon code:

<asp:ScriptManager ID="uxScriptMan" runat="server" /> 
<asp:UpdatePanel ID="uxtestupdatepanel" runat="server"> 
<ContentTemplate> 
<asp:DropDownList ID="DropDownList1" runat="server" 
    AutoPostBack="true" OnSelectedIndexChanged="TESTMETHOD"> 
<asp:ListItem Text="TEST" Selected="true" /> 
<asp:ListItem Text="Yes" Value="1" /> 
<asp:ListItem Text="No" Value="0" /> 
</asp:DropDownList> 
</ContentTemplate> 
</asp:UpdatePanel> 

et

protected void TESTMETHOD(object sender, EventArgs e) { /*do nothing*/ } 

Dans Firefox, cela fonctionne, pas d'erreurs. Et en fait, sur la machine dev, soln non compilé avec les fichiers .aspx et .aspx.cs, pas d'erreurs dans IE. Sur la machine de production, compilé, je reçois IE js erreurs.

Quel est le problème, comment réparer, ou au moins, où puis-je commencer à regarder? Fait une tonne de googling avec pas beaucoup de chance.

+0

@Duck: Il est ASP.NET 2.0/AJAX 1.0 - Déploiement Soln sur les travaux du serveur dev, pas d'erreurs IE, hmm ... @McBeev: EnablePartialRendering = "false" se débarrasse en effet des erreurs javascript mais n'agit plus comme un scintillement ss updatepanel (est un reqmnt). EnableEventValidation n'aide pas. @ck: Oui. –

Répondre

1

Correction du problème! C'était une combinaison des commentaires de Duck et de ck.

Merci les gars.

C'était un problème de web.config. Web.config de cette application particulière était différente de quelques autres applications que nous utilisions sur nos serveurs. Voici les correctifs pour toute personne qui a déjà ce problème.

web.config incorrect:

<compilation debug="false"> 
     <assemblies> 
      <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
      <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> 
     </assemblies> 
    </compilation> 


<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
     <dependentAssembly> 
      <assemblyIdentity name="System.Web.Extensions" publicKeyToken="31bf3856ad364e35"/> 
      <bindingRedirect oldVersion="1.0.61025.0" newVersion="3.5.0.0"/> 
     </dependentAssembly> 
    </assemblyBinding> 
</runtime> 

correcte web.config:

<compilation debug="false"> 
    <assemblies> 
    <add assembly="System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/> 
    <add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
    <add assembly="System.Web.Extensions.Design, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> 
    <add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/> 
    </assemblies> 
1

Dans le noir, votre serveur dispose-t-il des mêmes Service Packs que votre environnement de développement?

Si vous utilisez .NET 3.5 SP1, le Service Pack fait une grande différence et pourrait expliquer l'anomalie.

0

Essayez de définir la propriété ScriptManager EnablePartialRendering

EnablePartialRendering="false" 

Et voir si vous obtenez toujours une erreur

Essayez aussi de désactiver la validation d'événement sur cette page

<%@ Page EnableEventValidation="false" %> 

Et voir si vous avez encore obtenir une erreur

1

Avez-vous le même web.config à la fois? Il se peut que votre gestionnaire de ressources manque dans le gestionnaire de ressources pour ScriptResource.axd

Questions connexes