解析json错误:SyntaxError:JSON.parse:JSON数据第1行第2列的意外字符

我在解析json从php到javascript时遇到了问题

这是我的示例代码:

//function MethodAjax = function (wsFile, param) { return $.ajax({ type: "POST", dataType: "json", url: '../proses/' + wsFile + ".proses.php", data: 'param='+param, error: function (msg) { return; }, }); }; //call function $(document).ready(function() { $('#getproduk').click(function(){ var param = { ProdukId : '1', ProdukName : 'test' }; CallMethodWithAjax('try', JSON.stringify(param)).done(function(data){ $data = JSON && JSON.parse(data) || $.parseJSON(data); }); }); //Simple Php code ProdukName; $data1['id'] = $data->ProdukId; $data1['test'] = 'test'; echo json_encode($data1); ?> //post, response and error at console response : {"name":"test","id":"1","test":"test"} post : param {"ProdukId":"1","ProdukName":"test"} error : SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data 

如何解决这个问题,我已经尝试了我在SO和谷歌找到的解决方案,但仍然无法解决这个问题

请有人帮忙

谢谢

如果响应是JSON,jQuery的$ .ajax()函数将产生一个JavaScript对象,所以我相信你看到的错误是试图解析JavaScript对象而不是你期望的字符串的结果。 在您提供给done函数的回调中,检查data并且您将发现它是一个对象,并且不需要JSON.parse结果。