IE 10和jQuery 1.10.2获取0x800a03f6 - JavaScript运行时错误:无效字符

时间:2014-05-12 12:08:18

标签: jquery json internet-explorer visual-studio-2013

我有一个使用jQuery.Ajax的Web应用程序来从服务层获取JSON数据。我在Ajax调用的.done(而不是.fail)中收到以下错误。

0x800a03f6 - JavaScript运行时错误:字符无效

产生错误的代码行是:

var a = JSON.parse(result.d);

在调试器中查看时,返回的数据是完美的JSON格式:

[{"name":"Admin"},{"name":"SuperUser"}]

我在google搜索但没有解决方案时看到了很多波长。请帮忙。

2 个答案:

答案 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');
}
});