跨域-IE9jQueryAjax不工作



我使用的是jQuery 1.6.1和IE9。我正在我的机器上运行页面,试图从服务器请求数据。我的Javascript是这样的:

var baseURL = "http://1.1.1.1/cgi-bin/ipcxml.cgi?";
var path = "scm:scm/data/system_names";
var fullURL = baseURL + path;
$.ajax (
    {
        url: fullURL,
        cache: true,
        context: $("#" + element),
        crossDomain: true,
        dataType: "xml",
        type: "GET",
        success: function (data) {
        alert (data);
        }
    }
);

当我运行这段代码并在IE开发者工具中观察网络流量时,我没有看到请求发出。有人有什么想法吗?

我的选项卡有问题,里面的内容没有像其他浏览器那样更新。我浏览了一下网络,终于找到了我的解决方案:

cache:false

IE安全性导致缓存相关问题,因此将缓存设置为false解决了我的问题。希望它能帮助

我不知道这是否是问题的根本原因,但在查询字符串中使用冒号(:)和斜线(/)字符时必须进行编码。尝试:

var fullURL = baseURL + encodeURIComponent(path);

相关内容

  • 没有找到相关文章

最新更新