2013-04-03 57 views
0

我有下面的jQuery AJAX调用,它在IE8及更低版本中完全不起作用。 经过大量的谷歌时间后,似乎解决方案是将其重新编写为标准的JavaScript AJAX调用,而不是使用jQuery。将jQuery AJAX调用转换为javascript

我的JavaScript不是那么强大,所以我可以得到一些关于转换此功能的建议吗?

EDIT

  • 使用jQuery 1.9.1
  • IE8和下面,观看在IE网络面板时的AJAX调用被标记在结果列
  • 如为 '中止'建议将datatype更改为dataType
  • 加入cache: false
  • mode是一个int因此不需要额外添加引号
  • 改变JSONjson

-

function manageLocks(mode) { 
     $.ajax({ 
      type: "POST", 
      url: "/System/ManageLocks", 
      data: '{ "action" : ' + mode + '}', 
      contentType: "application/json", 
      dataType: "json", 
      cache: false 
     }); 
    } 
+0

什么“不起作用”? –

+2

你在“旧”浏览器上得到什么?错误?一点都没有? – melancia

+1

请确保其他东西不会在IE8中破裂,这只会给出这种方法导致问题的外观。 –

回答

1

它应与IE8的工作,因为jQuery的AJAX支持它。有很多应用程序与IE8 & jquery-ajax一起工作。

说,我觉得你应该搞清楚你的​​问题的根源,则尝试:

  • 降级jQuery的版本(2.0版本将删除支持IE8,尚未公布)
  • 变化datatype: "JSON"dataType: "json"
  • 支票,IE8是打你的服务器(看看服务器日志)
  • 检查响应是一个有效的JSON(使用一些工具来查看TRAFIC)
  • 请确保你没有在做跨域