谁能启发我为什么以下代码在IE7中不起作用,但在Chrome / Firefox中却能正常工作?
$(document).ready(function(){ $.ajax({ type: "POST", dataType: "text", cache: false, url: "/ajax/ajax.asp", data: "cmd=check_forfeits", success: function(msg) { return false; } }); });
IE抛出的JavaScript错误是“权限被拒绝”
如果我从有问题的页面的JS文件中删除了那段代码,该页面就可以正常工作,没有错误,所以错误在于我相信的那段代码。
:::更新:::
有点奇怪的是,当我刷新页面(在IE7中)时,没有出现JavaScript错误,并且此代码似乎正常工作。就像页面第一次加载此代码段错误一样,但此后它运行得很好。
这是IE7上此页面的提琴手帖子:
# Result Protocol Host URL 1 200 HTTP 192.168.47.13:8000 / 2 304 HTTP 192.168.47.13:8000 /js/jquery-1.4.1.js 3 200 HTTP 192.168.47.13:8000 /js/index.js 4 304 HTTP 192.168.47.13:8000 /js/jquery-1.4.1.js 5 200 HTTP 192.168.47.13:8000 /js/index.js 6 304 HTTP 192.168.47.13:8000 /css/main.css 7 304 HTTP 192.168.47.13:8000 /css/grid.css 8 304 HTTP 192.168.47.13:8000 /images/banner.jpg
这是来自Firefox的此页面的提琴手帖子:
# Result Protocol Host URL 1 200 HTTP 192.168.47.13:8000 / 2 304 HTTP 192.168.47.13:8000 /js/jquery-1.4.1.js 3 304 HTTP 192.168.47.13:8000 /js/index.js 4 304 HTTP 192.168.47.13:8000 /css/grid.css 5 304 HTTP 192.168.47.13:8000 /css/main.css 6 304 HTTP 192.168.47.13:8000 /images/banner.jpg 7 200 HTTP 192.168.47.13:8000 /ajax/ajax.asp
我遇到了同样的问题。
我做了一些工作来解决此问题。我编写了无需使用jQuery(创建XMLHttpObject,onreadystatechange等)即可进行ajax调用的代码。然后,我使用jQuery解析XML。
由于某种原因,jQuery的ajax不能与IE7一起很好地工作。
您实际上并没有在IE7中遇到错误,但是如果对其进行调试,则会看到服务器从未被命中,或者代码从未到达成功块。