2009-08-14 9 views
1

Depuis le week-end dernier, un problème est survenu sur notre site fournisseur avec IE uniquement. En FF3 et Chrome cela fonctionne bien. Ceci est un site simple ASP.NET (1.1) en utilisant le code suivant pour le bouton de connexion:Échec de la soumission de formulaire dans IE6/7, fonctionne correctement dans FF3 et Chrome

<asp:button id="btnLogin" runat="server" CssClass="dll-button" Text="Login"> 
</asp:button> 

En HTML est converti en ce

<input type="submit" name="btnLogin" value="Login" 
onclick="if (typeof(Page_ClientValidate) == 'function') Page_ClientValidate(); " 
language="javascript" id="btnLogin" class="dll-button" /> 

Quand je ne rentre pas un nom d'utilisateur I obtenir un message indiquant qu'il est nécessaire pour que quelque chose se passe, mais le formulaire n'est pas soumis au serveur. Cela me semble être un problème client (IE uniquement), mais tous les clients IE ont spontanément commencé à se comporter ainsi. C'est pourquoi je soupçonne le serveur, cependant. J'ai découvert qu'il y avait 2 mises à jour de framework .NET sur le serveur le week-end dernier, ce qui pourrait causer les problèmes, KB928366 un KB947742. Mais je ne peux pas relier ces mises à jour-descentes aux problèmes auxquels nous sommes confrontés maintenant.

Est-ce que je regarde quelque chose?

Je considère pour désinstaller ces mises à jour. Cela pourrait-il résoudre quelque chose?

Cordialement, Roel

Répondre

1

FF et IE poignées présenter différemment Par ex vous ne pouvez pas rediriger dans votre gestionnaire de soumission dans IE mais vous pouvez en FF. Le code ci-dessus est seulement pour l'événement click sur le bouton, qui ne sera pas déclenché (au moins pas dans IE) si vous appuyez sur Entrée, alors seul l'événement submit sur le formulaire sera ignoré l'événement onclick du bouton (Le bouton n'est pas cliqué après tout).

Il y a quelques petites différences entre IE, FF et C quand il s'agit de cliquer/soumettre que tout pourrait causer le problème que vous avez signalé.

TRY un à la fois et si vous ne l'avez pas déjà installé, installez un débogueur JavaScrip (VS fera l'affaire ou FireBug). De cette façon, vous serez en mesure de voir la différence d'exécution entre les navigateurs