web-dev-qa-db-fra.com

Formulaire/JavaScript ne fonctionne pas IE 11 avec erreur DOM7011

Le bouton d’enregistrement de notre formulaire ASP.net, qui utilise la fonction __postback, a cessé de fonctionner sous IE 11, à partir de la console du développeur:

DOM7011: le code de cette page a désactivé la mise en cache avant et arrière. Pour plus d'informations, voir: http://go.Microsoft.com/fwlink/?LinkID=291337 .

Est-ce que quelqu'un sait comment se déplacer avec ça? Qu'est-ce que cette chose de mise en cache et pourquoi gâche-t-il les formulaires? (J'ai vu des plaintes similaires à ce sujet émanant d'autres personnes.)

Merci,

31
eastboundr

Ce problème se produit si le serveur envoie un en-tête "Cache-control: no-store" ou envoie un en-tête "Cache-control: no-cache".

Source: http://support.Microsoft.com/kb/323308/en-us

6

Dans mon cas, cette exception était provoquée par un appel ajax non sécurisé sur un site compatible SSL. Plus précisément: mon URL était 'http://...' au lieu de 'https://...'. Je viens de le remplacer par '//...'.

Pour moi, l'erreur était trompeuse et j'espère que cela pourra aider quiconque atterrit ici après avoir recherché la même erreur. 

0
tr3v

J'ai vu exactement la même erreur, également avec IE11. Dans mon cas, le problème est survenu lorsque l'utilisateur a cliqué sur l'élément <button>, qui se trouvait dans les balises <form>

Le problème a été résolu en plaçant le <button> en dehors des balises <form>.

0
Matilda Smeds

J'ai reçu le même avertissement sur la console, lorsqu'une demande ajax était en cours d'exécution, mon formulaire ne fonctionnait donc pas non plus correctement.

J'ai désactivé la mise en cache sur l'appel ajax du serveur avec les en-têtes de réponse suivants:

Cache-Control: no-cache, no-store, must-revalidate
Expires: -1
Pragma: no-cache

Après cela, le formulaire fonctionnait. Reportez-vous au langage du serveur (c #, php, Java, etc.) que vous utilisez pour savoir comment ajouter ces en-têtes de réponse.

0
tno2007

Je me heurte à cela lorsque vous cliquez sur un fichier HTML, il est corrigé en ajoutant un attribut type = "button". 

0
Feng Zhang