我對jQuery ajax成功處理程序有困難。在成功處理程序中發生的任何JavaScript運行時錯誤都不會被報告(Firefox錯誤控制檯中不會顯示任何錯誤)。並嘗試調試沒有錯誤通知讓我瘋狂。有人可以看看下面我的代碼的簡化版本,讓我知道我是否在做一些可能導致問題的蠢事。jQuery ajax中的錯誤沒有得到報告
如果沒有,如果有人可以在Firefox中測試這個,並確認(或不),沒有錯誤消息出現,它不只是我生氣(或者我的Firefox安裝有什麼問題或什麼)。我也把代碼在網絡上 - 這樣你就可以直接點擊下面來測試它....
http://www.alisonstrachan.co.uk/tests/ajax2/ajax_test2.html
ajax_test2.html
<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.js"></script>
<script type="text/javascript">
$(document).ready(function(){
//alert(missingVariable1); //uncomment -> get error reported (as expected)
$.ajax({
url: "ajax_test2_process.php",
data: {send: "hello"},
async: false,
success: function(data){
$("#results").append(data);
alert(missingVariable2); //no error reported (there should be surely?)
$("#results").append(" finished ");
}
});
});
</script>
</head>
<body>
<div id="results"></div>
</body>
</html>
ajax_test2_process.php
<?php
echo "received: " . $_REQUEST['send'];
?>
到您重定向正在顯示的頁面'收到:hello'是不是想要的結果 – Rafay
@ 3nigma感謝測試了這一點。是的,這是預期的結果。但是我需要知道的是你在Firefox錯誤控制檯中得到了什麼。故意在您的控制檯中隱藏「alert()」錯誤? –
也許ajax請求失敗,因此永遠不會調用成功,試圖通過完成更改成功,使用FIREBUG – max4ever