Form/JavaScript not working on IE 11 with error DO

2020-01-31 02:41发布

问题:

The register button for our ASP.net form, which uses the __postback function stopped working on IE 11, from the developer console, it shows:

DOM7011: The code on this page disabled back and forward caching. For more information, see: http://go.microsoft.com/fwlink/?LinkID=291337.

Does anyone know how to get around with this? What is this caching thing and why does it mess up forms. I seen similar complaints about this from others.

回答1:

This issue occurs if the server sends a "Cache-control:no-store" header or sends a "Cache-control:no-cache" header.



回答2:

This error occurred for me when using window.location.reload(). Replacing with window.location = window.location.href solved the problem.



回答3:

In my case, this exception was being caused by an unsecure ajax call on an SSL enabled site. Specifically: my url was 'http://...' instead of 'https://...'. I just replaced it with '//...'.

To me, the error was misleading, and hopefully this may help anyone landing here after searching for the same error.



回答4:

I have seen exactly the same error, also with IE11. In my case the issue occurred when user clicked <button> element, which was inside <form> tags.

The issue was remedied, by placing the <button> outside of <form> tags.



回答5:

I run into this when click on a html , it is fixed by adding type = "button" attribute.



回答6:

I got the same console warning, when an ajax request was firing, so my form was also not working properly.

I disabled caching on the server's ajax call with the following response headers:

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

After this, the form was working. Refer to the server language (c#, php, java etc) you are using on how to add these response headers.



回答7:

Go to

Tools > Compatibility View settings > Uncheck the option "Display intranet sites in Compatibility View".

Click on Close. It may re-launch the page and then your problem would be resolved.