我有一个使用jQuery.Ajax的Web应用程序来从服务层获取JSON数据。我在Ajax调用的.done(而不是.fail)中收到以下错误。
0x800a03f6 - JavaScript运行时错误:字符无效
产生错误的代码行是:
var a = JSON.parse(result.d);
在调试器中查看时,返回的数据是完美的JSON格式:
[{"name":"Admin"},{"name":"SuperUser"}]
我在google搜索但没有解决方案时看到了很多波长。请帮忙。
答案 0 :(得分:0)
我最近收到了同样的错误,并将其追溯到Web服务正在读取的SQL服务器表中的无效字符。在调试器中,此字符显示为空格,但实际上是一个unicode字符(在本例中为0x28)。从数据库中删除字符后,我没有再收到错误。是时候加强我的输入验证,以确保这些值不再被保存到数据库中! :)
答案 1 :(得分:-2)
我在$ .ajax
的成功部分处理我的结果 $.ajax({
url: serviceurl,
dataType: 'json',
success: function(responseText) {
//responseText is already a JSON object so you can access its properties directly
//not that I encourage that :p
if(responseText.length>0)
{
//do something with the array
}
},
complete: function (){
console.log('ajax complete');
},
error: function() {
console.log('ajax error');
}
});