2013-01-10 66 views
3

試圖回到這裏的基礎知識,並通過Ajax發送一個JSON對象到我的PHP。我甚至無法得到那部分,因爲我得到一個JSON錯誤。這裏是jQuery代碼:傳遞JSON對象與jQuery的ajax

jQuery(".deletebutton").on("click", function() { 

     var employees = [ 
     { "firstName":"John" , "lastName":"Doe" }, 
     { "firstName":"Anna" , "lastName":"Smith" }, 
     { "firstName":"Peter" , "lastName": "Jones" } 
     ]; 

     var dataString = JSON.stringify(employees); 

     // Lets put our stringified json into a variable for posting 
     var postArray = {json:dataString}; 

     jQuery.ajax({ 
      type: 'POST', 
      url: 'index.php?option=com_recordings&task=deletevideos&format=raw', 
      data: postArray, 
      dataType: 'json', 
      success: function(data){ 
       if (data == "blah") 
        alert(data); 

      } 
     }); 
}); 

我得到這個錯誤(當我檢查errorThrown):語法錯誤:JSON.parse:意外的字符。我檢查了jsonlint.com它是有效的JSON。我究竟做錯了什麼?

回答

3

dataType請求頭,而不是響應。如果你沒有發回有效的JSON,jQuery不會喜歡它。你想發送JSON,但你可能想要回到別的東西。只要刪除dataType,它應該可以正常工作,除非服務器腳本出現錯誤。

+0

輝煌,thx。 – Tom

1

你發佈的東西是js對象而不是json。你必須發佈字符串化的json。

data: dataString 
+0

我已經試過了,同樣的問題。 – Tom

1

變化 數據:dataString

,並沒有任何問題都會occure