J'utilise ASP.NET et j'ai un bouton Enregistrer sur WebForm. Lorsque ce bouton Enregistrer est cliqué (une fois) et que j'utilise IE8, le gestionnaire d'événements est exécuté deux fois. Si j'utilise le mode de compatibilité, cela fonctionne très bien. En FF, tout fonctionne très bien. J'ai testé IE8 sur Vista et Windows 7 et obtenez le même comportement. IE7 fonctionne juste bien. Juste curieux est que quelqu'un a eu un problème similaire. P>
P.s. J'utilise un système de mise en page avancé qui positionne et styles les commandes basées sur une définition de mise en page, ce n'est donc pas simplement une commande de lancer standard sur une configuration de page. P>
7 Réponses :
Je viens de fixer un bogue avec des symptômes similaires causés par deux appels de form2 () étant fabriqués dans le gestionnaire d'événements JavaScript côté client pour le bouton. P>
Il apparaît que le deuxième formulaire () était ignoré par d'autres brous mais exécutés dans IE8. p>
Nous utilisons Onserverclick sur une étiquette de bouton au lieu d'utiliser un bouton ASP.NET. La solution consistait à définir le type de bouton sur "bouton". Avant qu'aucun type n'a été réglé et je pense qu'il était en défaut de soumettre.
modifié p> à p> maintenant Je ne reçois pas le double post dans IE8. P> p>
C'est la solution idéale pour ce problème.
Le bouton Property MoyensUMitBehavior = "False" fait la même chose. J'ai eu des problèmes avec l'utilisation de type = "bouton". Il a continué de renverser à «soumettre», mais cette propriété le rendit en bâton. Vieux fil, mais j'espère que cela aide quelqu'un.
J'utilisais note que j'appelle Soumettre directement sur le formulaire au lieu de la jQuery méthode
J'espère que cela aide quelqu'un p> p> jQuery (formobj) .trigger (Soumettre) code> Ceci a été modifié en
Je viens de trouver une solution à un problème similaire, j'avais des problèmes. Étant donné qu'aucune des solutions précédentes ne semblait m'aider, je pensais poster ma propre solution.
Le problème: p>
Lorsque vous utilisez une touche ASP sur une forme Web et à l'aide de l'OnClientClick pour exécuter un post-revers personnalisé. mécanisme. Le post-plan semble se produire deux fois (la deuxième fois sans vie d'opinion d'être appliquée)
par exemple. : p> la solution: p> Ajouter un "retour faux;" Après l'appel de la fonction JS dans le bouton OnClientClick.
L'ajout dans la fonction elle-même ne fait pas l'affaire. P> E.g. : p>
Veuillez regarder le HTML car il est rendu sur la page:
Chaque fois qu'il est présent p> double postback peut se produire, pour un navigateur ... < / p> S'il s'agit du problème, vous pouvez le résoudre à définir une image par défaut, vide, image pour chaque bouton p>
Juste pour ajouter au nombre de solutions.
Ce n'est pas seulement <asp:Button runat="server" ID="btnOk" Text="Ok" OnClick="ok();return false;" cssClass="btn"/>
J'ai eu ce même problème à se produire dans IE 11 et a réussi à le réparer en ajoutant de type = "bouton" à la commande de bouton. P>
Pouvez-vous fournir des échantillons de code?
Oui, je suis intéressé par la partie du HTML et / ou JavaScript qui est responsable de l'initiation du publication.
J'utilise simplement un gestionnaire d'événements standard afin que le JavaScript soit juste __doposcript ('CTL00 $ Main $ Savisbutton', '') pour l'événement OnClick. Je vais toujours isoler le problème pour que je n'ai pas encore de code de code.