1

これが私の単純なajax関数です:

var callback = function () {
    $.ajax({
        url: "/Home/Timer",
        success: function (response) {
            console.log(response); // Fails, but only in IE10
            $("#target").html(response);
        }
    });
}

setInterval(callback, 1000);

およびコントローラー/アクション:

public String Timer()
{
    Debug.WriteLine(DateTime.Now.ToString()); // Shows correctly in all browsers
    return DateTime.Now.ToString();
}

これは、Opera、Chrome、Firefox では正常に動作しますが、最も奇妙な理由で IE10 では動作しません。他のすべてのブラウザーではconsole、現在の時刻がログに記録されますが、IE10 では、同じ時刻が何度も記録され続けます。メソッドにブレークポイントを設定するTimerと、メソッドは正しくヒットしますが、何らかの方法でsuccessコールバックに戻ると、間違った時間が報告されます。なぜそれが起こるのでしょうか?

4

3 に答える 3

3

もしかしてキャッシュ?cache:falseajaxオプションで設定してみてください

于 2013-05-30T03:20:19.533 に答える