gpt4 book ai didi

jQuery JSON 响应总是触发 ParseError

转载 作者:IT老高 更新时间:2023-10-28 12:48:32 26 4
gpt4 key购买 nike

我正在尝试使用 jQuery 和 JSON 执行一些基本操作。目前 jQuery 难以接受来 self 的游戏框架应用程序的 JSON 响应。下面是仍然产生错误的代码的简化版本。

$.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'
});

错误回调总是被触发。它显示

Error... parsererror jQuery15001997238997904205_1298484897373 was not called

通过 Firebug 检查返回的 JSON 显示没有错误,并且各种 JSON lint 工具也可以验证。将 dataType 更改为 "text"会调用成功。但我正在尝试使用 isUsernameAvailable 调用作为 jQuery 验证插件的一部分,所以我需要它返回有效的 JSON。

最佳答案

也许我理解错了,但是你不能将 dataType 设置为 text 和 JSON.parse() 返回的数据吗?

success: function(data) {
data = JSON.parse(data);
// process data
},

已编辑以添加普遍认可的解决方案(以前仅为评论):

我刚刚看了api.jquery.com/jQuery.ajax看起来使用 jQuery 1.5 你可以进行各种类型的转换。 “多个以空格分隔的值:从 jQuery 1.5 开始,jQuery 可以将 dataType 从它在 Content-Type header 中收到的内容转换为您需要的内容。例如,如果您希望将文本响应视为 XML,请使用“文本 xml"用于数据类型。"也许你可以试试“文本 json”。

关于jQuery JSON 响应总是触发 ParseError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5095307/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com