IE中的Ajax错误

时间:2012-11-19 13:33:19

标签: internet-explorer jquery servlets

我在java中有一个servlet。

我的servlet网址是 http://192.168.10.113:8080/collective-intellegence/UserClickPersonClassifier?userid=1&query=asp.net

此URL提供json数据。

我正在使用jquery ajax调用来获取数据。

我的代码

function SecondResultLink(link, userId, userInput) {
try{
    var urlSearch = "http://192.168.10.113:8080/collective-intellegence/UserClickLinkClassifier?userid=" + userId + "&query=" + userInput;
    $.ajax({
        url: urlSearch,
        type: 'POST',
        dataType: 'json',
        async: false,
        success: function (data) {
            if (data.length != 0) {
                for (index = 0; index < data.length; index++) {
                    if (!link.exist(data[index].Link.name.toLowerCase(), data[index].Score)) {
                        link.add(data[index].Link.name.toLowerCase(), data[index].Score);
                    }
                }
            }
        },
        error: function (error) {
            alert(error.error);
        }
    });
}
catch (err) {
    alert(err);
}
}

上述代码在Chrome,Firefox和Safari中提供了45条记录,但在Opera中提供了25条记录并在IE中显示错误消息。

IE中的错误消息: - function(){if(c){var a = c.length; m(arguments),i? k = c.length:e&amp;&amp; e!==!0&amp;&amp;(j = a,n(e [0],e [1]))}返回此}

在除IE请求之外的所有浏览器中都要进入服务器,但在IE中没有请求进入服务器。

这不是跨域问题,因为我允许所有人访问服务器(在标题中看到Access-Control-Allow-Origin:*)

IE有什么问题? 如何解决此问题或任何其他方法来获取数据。

请帮忙

提前致谢

1 个答案:

答案 0 :(得分:0)

IE8和IE9并不完全支持cors .. 所以你必须写一些特定的代码,即8和9

浏览此链接 这会对你有所帮助 (点击这里)[http://msdn.microsoft.com/en-us/library/dd573303%28v=vs.85%29.aspx]