1

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>
4

2 に答える 2

1

考えられる答え: http: //bugs.jquery.com/ticket/12790#comment :28

IE10とPOSTリクエストの問題のようです。したがって、これに対する修正はまったくない可能性があります。つまり、人々がIE10を使い始めると、壊れたajaxサイトがたくさんあるということです。

これは、IE10でのPOSTリクエストで広く発生している問題のようですが、これは私たちが管理していないため、このチケットでさらにフィードバックを投稿する必要はありません。これが問題のMicrosoftチケットです。以下を表示するには、ログインを作成する必要があることに注意してください。

http://connect.microsoft.com/IE/feedback/details/771016

于 2013-02-12T00:46:02.760 に答える
1

更新(2013 年 2 月 27 日):

Microsoft は、Win 7 用の IE 10 の最終バージョンをリリースしました。更新には、重要な修正が含まれています。Internet Explorer 10 が 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 のバージョンを明確にします。

バグレポートから:

これは、Windows 7 のデスクトップでのみ発生する問題です。Windows 8 の IE10 は正常に動作しています。

于 2013-02-12T00:54:11.777 に答える