$ .getJSON无法在IE10中运行,

时间:2013-10-31 08:38:48

标签: javascript jquery json internet-explorer

我正在尝试发布这样的帖子请求。以下行调用控制器操作

$.getJSON(GetPath('/Products/Search'), param, function (data) {
  // do some thing with data
}

GetPath为我提供了有效的网址

   function GetPath( url ) {

           var protocol = "http://";

           if ('@ApplicationInstance.Application["IsHTTPS"]' == "TRUE")

               protocol = "https://";

           if ('@HttpContext.Current.Request.ApplicationPath' == "/")

               return protocol + window.location.host + url;

           else

       return protocolwindow.location.host+'@HttpContext.Current.Request.ApplicationPath' + url;    

       }

这在铬和野生动物园中完美无缺。

但在IE10中在控制台中收到错误消息

  

script1014:无效字符

这与Jquery版本有关吗?

2 个答案:

答案 0 :(得分:0)

显然,IE似乎在直接访问文件时遇到问题(没有http服务器)。 如果您将请求更改为

$.getJSON(GetPath('http://localhost/Products/Search'), param, function (data) {
  // do some thing with data
}

(假设你在localhost环境中运行它) 然后这个错误应该消失,你的代码应该可以工作。

(CFR)。 SCRIPT1014: Invalid character; Getting SCRIPT1014: Invalid character in IE from local js file

同时清除浏览器缓存有时似乎有帮助

答案 1 :(得分:0)

return protocolwindow.location.host+'@HttpContext.Current.Request.ApplicationPath' + url;

更改

return protocol + window.location.host + '@HttpContext.Current.Request.ApplicationPath' + url;

和getJSON成功回调使用jQuery.parseJSON

$.getJSON(GetPath('/Products/Search'), param, function (data) {
    var search_results = jQuery.parseJSON(data);
    console.log(search_results);
}