我想用jQuery和JSON来执行一些基本的操作。目前,jQuery接受来自我的play framework应用程序的JSON响应有困难。下面是仍然产生错误的代码的简化版本。jQuery的JSON响应总是触发一个ParseError
$.ajax({
type: 'POST',
url: "@{FrontEnd.isUsernameAvailable()}",
data: "name=thisnameisavailable",
cache: false,
success: function(data) {
console.log("Success... ");
},
error: function(jqXHR, textStatus, errorThrown) {
console.log("Error... " + textStatus + " " + errorThrown);
},
dataType: 'json'
});
错误回调总是被触发。它显示
错误...... parsererror jQuery15001997238997904205_1298484897373不叫
通过Firebug的检查返回的JSON未显示错误和各种JSON皮棉工具还验证。将dataType更改为“text”可以调用成功。但我试图使用isUsernameAvailable调用作为jQuery验证插件的一部分,所以我需要它返回有效的JSON。
你确定响应是application/json类型(我认为答案是肯定的)),而你的json就像{“field”:“value”,...} ...双引号有时候重要的是,如果你的值是字符串类型,而不是布尔或int ...并且没有孤立“,”... 无论如何,你似乎有一个解决方法! – mandubian 2011-02-24 09:37:27
在你的问题中,我的回答是...我的PHP使用回声简单的文本给回来,所以改变我的dataType'文本'做了这项工作。谢谢:) – Pitto 2013-08-06 07:43:00