2013-03-06 118 views
1

我從另一個工作複製了這個ajax調用,我不知道爲什麼它不成功。這裏是代碼:jquery ajax php電話不能正常工作

$.ajax({ 
    type: "POST", 
    url: "addTune.php", 
    data: { 
     database: setlist, 
     name: tune, 
     orderno: orderno, 
     midi: midi 
    }, 
    error: function (e) { 
     alert("The PHP Call failed! hmmm"); 
     alert(e.status); 
    }, 
    success: function (response) { 
     alert(response); 
    } 
}); 

我每次都得到錯誤函數。是否有任何錯字或其他愚蠢的錯誤?

編輯:努力追逐的誤差:

$.ajax({ 

       type: "POST", 
       url: 'addTune.php', 
       data: {database : setlist, name : tune, orderno : orderno, midi : midi}, 
       error: function(e){ 
        alert("The PHP Call failed! hmmm"); 
        alert(e.status); 
       $.ajaxSetup({ 
        "error": function(jqXHR, status, thrownError) { 
         alert('error'); 
         var responseText = jQuery.parseJSON(jqXHR.responseText); 
         console.log(responseText); 
        } 
        }); 
       }, 
       success: function(response){ 
        alert(response); 

       } 



      }); 


     }); 

更新:我只是能夠添加一行命令行。我有什麼想法可以嘗試進一步縮小這個範圍?

+1

你會得到什麼錯誤? – Marcus 2013-03-06 17:45:55

+0

什麼是'e.status'? – 2013-03-06 17:46:02

+0

因爲ajax調用失敗,你得到的錯誤函數,它不是一個JavaScript問題。打開螢火蟲或任何東西,看看請求/響應。 – Galen 2013-03-06 17:47:25

回答

0

我不是專業人士,但也許使用單引號而不是雙引號?因爲我工作的一個項目中我也有做的AJAX調用和我使用單引號

我只是暗示的東西,在這個

+1

你可以使用任何 – Galen 2013-03-06 17:58:45

+0

兩種都沒有改變......謝謝 – 2013-03-06 22:38:53

0

不是真的好,如果你進入了錯誤回調,那麼你在你打電話的頁面有錯誤,而不是使用js代碼。檢查是否達到了php頁面。如果是檢查php代碼是否返回有效結果。

來自jquery DOCS。

錯誤

類型:Function(jqXHR jqXHR,字符串textStatus,字符串errorThrown)甲 函數如果請求失敗被調用。函數接收 三個參數:jqXHR(jQuery中1.4.x中,XMLHttpRequest的)對象, 串描述錯誤的發生的類型和任選的 異常對象,如果一個發生。第二個 參數的可能值(除了空值)是「超時」,「錯誤」,「中止」和「parsererror」 。發生HTTP錯誤時,errorThrown會收到HTTP狀態的 文本部分,例如「未找到」或「內部 服務器錯誤」。從jQuery 1.5開始,錯誤設置可以接受函數的數組 。每個函數都會依次調用。注意:此處理程序 未被調用用於跨域腳本和JSONP請求。這是一個 Ajax事件。

+0

我曾嘗試和實現這個,但函數變量沒有顯示任何東西。我會發布我在OP中所做的 – 2013-03-06 20:48:29