用jquery ajax传递json对象

试图回到这里的基础知识并通过ajax将JSON对象发送到我的php。 当我收到JSON错误时,我甚至无法访问该部分。 这是jquery代码:

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 ):SyntaxError:JSON.parse:意外字符。 我用jsonlint.com查看它是有效的JSON。 我究竟做错了什么?

dataType是指请求标头,而不是响应。 如果你没有发回有效的JSON,jQuery将不喜欢它。 你想发送JSON,但你可能想要找回别的东西。 只需删除dataType ,它应该可以正常工作,除非服务器脚本出错。

你发布的东西是js-object而不是json。 你必须发布字符串化的json。

 data: dataString 

更改为data:dataString

并且不会出现任何问题