jquery接收json格式数据在IE中被引号括起来了,并出现了转义符号(如下1),导致eval函数失效,如何解决呢?
1:
"[{\"id\":1,\"name\":\"cong\"},{\"id\":12,\"name\":\"demo\"},{\"id\":15,\"name\":\"aaab\"}]"2:
[{"id":1,"name":"cong"},{"id":12,"name":"demo"},{"id":15,"name":"aaab"}]

解决方案 »

  1.   

    出错的话,加个括号表示使用的是转换为对象,而不是执行表达式
        var json = "[{\"id\":1,\"name\":\"cong\"},{\"id\":12,\"name\":\"demo\"},{\"id\":15,\"name\":\"aaab\"}]";
        json = eval("(" + json + ")");
      

  2.   

    如果你的jquery的ajax方法中使用dataType类型为text
    就需要eval("(" + json + ")")才能把接受到的字符串变成json格式另外我觉得用firefox更方便开发,可以利用它的一个插件firebug查看跟踪所有变量