我有一個在FF,Chrome,Opera和Safari中工作的ajax請求。我在IE中測試了它,它做了兩個請求中的第一個。它從一個php腳本獲取IP,但是當它發佈到我的java servlet時,它不會發出請求;我用小提琴和wireshark進行測試,並且請求沒有被髮送出去。我試過將ajax緩存設置爲false並沒有幫助。不知道它可能是什麼。在PHP發出的唯一區別是IE不發送客戶端接受字符集。這使我相信這個問題與第一個要求有關;然而它正確地獲取數據,所以我有點難過的想法?我刪除了特定的地址,但其餘的代碼差不多。
更改我的代碼,以便我沒有嵌入的請求,我準備好文檔,停止IE凍結但它仍然不發送。此外,它現在返回Ajax請求上的一般錯誤返回值。更改下面的代碼更多Jquery Ajax請求不在IE中發送
<script>
$(function()
{
function myfunction(event)
{
var email = $("#emailInput").val();
if (email.indexOf('@') == -1 || email.indexOf('.') == -1)
{
alert("Please Enter a Valid Email");
}
else
{
var eEmail = "email:" + email +"," + "ip:" + ip;
Email = "="+encodeURIComponent(eEmail);
$.support.cors = true;
$.ajax(
{
url: 'myServletURI',
type: 'POST',
data: eEmail,
cache: 'false',
error: function(xhr,textStatus)
{
alert(textStatus);
},
success: function(data)
{
//I have a JS lib I wrote to parse results
var result = makeDictionary(data);
if(result["command"] == "failed")
{
alert("Error");
}
else
{
window.location = "goToNextPage.html";
}
}
});
}
}
return false;
});
</script>
謝謝。
您是否發射了IE瀏覽器的開發者工具「F12」,並確保有沒有在控制檯中的任何JavaScript錯誤?你也可以嘗試一步一步的調試,看看你是否能以這種方式獲得更多信息。 – MichaC 2012-07-12 00:34:23
是的我得到了更多的數據,但它並沒有幫助我,它讓我認爲它是跨站點錯誤,但我已經在我的servlet中啓用它,正如所有其他瀏覽器獲得響應所示,所以仍然卡住。我回到了XHR元數據 'readyState的 Number' '狀態 Number' '狀態文本\t「否傳輸」 \t String' – CubanAzcuy 2012-07-12 03:37:48
我可能已經找到了解決辦法,此刻不能檢查將重新明天發佈。 [鏈接](http://stackoverflow.com/questions/9160123/no-transport-error-w-jquery-ajax-call-in-ie) – CubanAzcuy 2012-07-12 03:56:54