【发布时间】:2010-07-26 13:05:38
【问题描述】:
我在 JQuery 中的 AJAX 调用有问题。它适用于 Chrome、FF 和 Safari,但不适用于 IE。事实上,在 IE 中什么都没有发生,没有错误,没有加载数据。
代码如下:
$(document).ready(function() {
$.ajaxSetup({ cache: false });
$.get("ShoppingCart2.aspx", { }, function(data) {
//query the jq object for the values
alert(data);
alert($(data).find('#Items').text());
var intI = parseInt(($(data).find('#Items').html()));
通过警报数据,我找到了我正在调用的页面中的所有数据,但不幸的是,我的 data.find 方法为 IE 提取了 null。我不确定是代码还是浏览器,但我真的被卡住了。谢谢你的帮助。
编辑:我确实添加了 cache: false 命令,但我仍然没有运气。我真的不明白为什么这在 IE 中不起作用。
【问题讨论】:
-
如果是缓存问题,只用 JavaScript 是无法解决的,你需要真正拥有服务器访问权限并修改传出的 header 以取悦 IE,stackoverflow.com/questions/3288500/… 否则你会得到很多 304来自服务器,尽管您使用一些随机数据修改了 url。由于实际的消息正文没有被修改。
-
我试过这样做,但没有奏效。我也很好奇为什么我的警报(数据);会提取我从中提取信息的网页上的所有数据,但是为什么我的 data.find 无法正常工作...这会是缓存问题吗,因为我可以提取整个页面的实际 html警报(数据); ?
标签: javascript jquery ajax