2013-06-27 157 views
-2

我想用ajax發送數據,但我得到一個語法錯誤,我不明白爲什麼... 我讀了一些相同的問題,但我仍然不明白我的錯在哪裏...語法錯誤:簡單的ajax請求

$.ajax({ 
    type: "POST", 
    url: "imprime_planning", 
    data: { 
     "test": "test" 
    }, 
    dataType: "JSON", 
    success: function(msg){ 
     alert(msg); 
     console.log(msg); 
    }, 
    error: function(res, status, exeption) { 
     alert(res); 
     console.log(exeption); 
    } 
}); 

感謝您的專家眼睛!

編輯: 了「的SyntaxError」在誤差函數的異常中給定

+2

你在哪裏得到語法錯誤?哪一行號碼 – DaveHogan

+0

而且在代碼中看不到任何語法錯誤。 –

+0

什麼是語法錯誤...發佈那些錯誤... – Hariharan

回答

0

我寫這篇test.php的澄清:

test.php的:

<?php 
    $res = array(); 
    $res['answer'] = "got POST request with test: ".$_POST['test']; 
    print(json_encode($res)); 
?> 

Ajax調用:

$.ajax({ 
    type: "POST", 
    url: "test.php", 
    data: { 
     "test": "test" 
    }, 
    dataType: "JSON", 
    success: function(msg){ 
     alert(msg.answer); 
     console.log(msg.answer); 
    }, 
    error: function(res, status, exeption) { 
     alert(res); 
     console.log(res); 
    } 
}); 

適合我...

+0

感謝您的回答,我得到:{} 當我嘗試:console.log(res.responseText); 我收到了我期待的內容,但是我的下一頁沒有收到發佈數據 – ThEBiShOp

+0

您確定您不錯過URL中的.php擴展名嗎?你可以發佈你如何試圖獲取下一頁上的數據嗎? – shak

+0

我正在使用cakephp,url被重寫。 我使用調試($ this-> request-> data),它應該顯示頁面(post,get或其他)收到的數據,我得到一個空數組。 但是這是有道理的,因爲我的ajax請求仍然拋出錯誤的功能,我猜... – ThEBiShOp

0

確保您設置Response.StatusCode比200以外的東西寫使用的Response.Write您的異常的信息,然後使用...

xhr.responseText 

...在您的JavaScript。

請參考下鏈接,指引....

http://encosia.com/use-jquery-to-catch-and-display-aspnet-ajax-service-errors/

+0

我不明白髮生了什麼... 我在錯誤函數中顯示res.responseText,它似乎是我所期望的,但是當我去在網頁中的頁面,我的POST是空的... – ThEBiShOp

+0

我不明白你對郵政有什麼期待?你的問題正確無誤! – Hariharan

+0

解決? 我沒有收到帖子數據,我只是期待一個解釋。 – ThEBiShOp