到底他妈的什么是标准json格式?
服务端返回格式
"{'rows':[{'UserId':'001','UserName':'wocao'},{'UserId':'002','UserName':'ooxx'}],'total':'1000'}"
用jquery的parseJson方法解析 老说格式错误 (jquery版本1.71最新的)
用 new Function("return "+data+"")()毛问题都木有
这是jquery的parseJSON方法里加的一段代码 后来我注释了这段代码才才行
为什么要加这玩意?
- JScript code
Attempt to parse using the native JSON parser first if (window.JSON && window.JSON.parse) {/*用firedebug调式的时候 竟然进入这里了 我根本没有引用那个http://json.org/json2.js文件 这里竟然不显示undefinedie和chrome则不会进入这里*/ return window.JSON.parse(data); }if (rvalidchars.test(data.replace(rvalidescape, "@") .replace(rvalidtokens, "]") .replace(rvalidbraces, ""))) { return (new Function("return " + data))(); }[解决办法]
把小引号换成大引号,大引号换成小引号
[解决办法]
这个标准记得是从1。3还是多少版本开始的。。。
[解决办法]
"{'rows':[{'UserId':'001','UserName':'wocao'},{'UserId':'002','UserName':'ooxx'}],'total':'1000'}"
如果上面这个不行,可以试试:
"[{'rows':[{'UserId':'001','UserName':'wocao'},{'UserId':'002','UserName':'ooxx'}],'total':'1000'}]"
最还是把那个单引号换成双引号