- <script>
- var json='{"id":1}' ;
- var jsonObj=eval("(" +json+ ")" );
- alert(jsonObj.id);
- </script>
- <script>
- var json='[{"id":1}]' ;
- var jsonObj=eval(json);
- alert(jsonObj[0 ].id);
- </script>
JSON中如果包含引号或双引号,会破坏JSON的格式。有两种方法可以解决。
在入库的时候可以使用addslashes()函数处理一下字符串,给引号前加上斜杠。被改的字符包括单引号 (')、双引号 (")、反斜线 backslash (\) 以及空字符NULL。
1 |
$text = addslashes ( $text ); |
JavaScript的话,可以这样:
1 |
function valueReplace(v){ |
2 |
v=v.toString().replace( new RegExp( '(["\"])' , 'g' ),"\\\ "" ); |
5 |
var eValue = encodeURI($.trim(valueReplace(e.value))) |
在后台取出数据到前台时会有一些特殊要求,
解决办法很简单,在JS将其渲染到HTML页面前转换一下即可:
view source
print?
01 <script type="text/javascript">
02 var str = '<b>msg</b> #';
03 document.all.div1.innerHTML='<pre>'+str+'</pre>';