87,919
社区成员
发帖
与我相关
我的任务
分享
var s = '[{"a":"aa","b":"bbb"},{"a1":"<a href=\"#\">dd</a>"}]';
<a href=\'#\'>dd</a>
<a href=\\"#\\">dd</a>
var s = '[{"a":"aa","b":"bbb"},{"a1":"<a href=\\"#\\">dd</a>"}]';
alert(s);
o = JSON.parse(s.replace(/\\\"/, '\\"'));
alert(JSON.stringify(o));
alert(o[1].a1)
[{"a":"aa","b":"bbb"},{"a1":"<a href="#">dd</a>"}]
从数据里面看,使用eval时 在a标签中 [{"a":"aa","b":"bbb"},{"a1":"<a href="就这样断开了。
所以要使用转义,但是如果直接使用 \" 转义后也会变成 单引号 " 在使用eval解析时还是会出错。
你可以先把 “ 去掉。然后 eval
var s = '[{"a":"aa","b":"bbb"},{"a1":"<a href=\\\"#\\\">dd</a>"}]';
JSON.parse(s)
你不仅要对"转移,还要对\转移,所以要3个\