我无法在IE10中使用ajax。无论我尝试多少次/方式/框架,都没有用。它总是返回一个空字符串。
<html>
<head>
<script type="text/javascript" src="jquery-1-9-1.js"></script>
</head>
<body>
<br/>
<a onclick="doit()">go</a>
<script>
function doit()
{
var myData = { "key": "value" };
$.ajax({
url: "myhandlepage.php",
data: myData,
dataType: 'json',
type: 'POST',
contentType: 'application/x-www-form-urlencoded',
success: function (data) { alert("OK = " + data.eric); },
error: function (data, status) { alert("FAILED:" + status); }
});
}
</script>
</body>
</html>
答案 0 :(得分:1)
可能的答案:http://bugs.jquery.com/ticket/12790#comment:28
这似乎是IE10和POST请求的问题。所以可能根本没有解决这个问题。这意味着如果人们开始使用IE10,将会有很多破坏的ajax网站!
这似乎是IE10上POST请求的普遍问题,我们无法控制,因此无需在此故障单中发布进一步的反馈。这是问题的Microsoft票证;请注意,您需要创建一个登录才能查看:
答案 1 :(得分:1)
更新(2013年2月27日):
Microsoft已发布适用于Win 7的IE 10的最终版本。更新包含重要修复程序:Internet Explorer 10 Arrives on Windows 7
可能是您要发送的数据。请尝试下面的修订,然后您可以暂停contentType
:
function doit()
{
var myData = { key: "value" }; //plain object
$.ajax({
url: "myhandlepage.php",
data: myData,
dataType: 'json',
type: 'POST',
success: function (data) { alert("OK = " + data.eric); },
error: function (data, status) { alert("FAILED:" + status); }
});
}
来自jquery docs:
contentType(默认值:'application / x-www-form-urlencoded; charset = UTF-8')
另外,澄清操作系统和IE10版本。
来自bug report:
这只是Windows 7桌面上的一个问题.Windows 8中的IE10工作正常。