你的 alert(guala); 显示的是什么?
解决方案 »
- extjs button的handler问题
- ]ExtJs4]怎样通过单击事件显示一个grid
- jscript 中 是不是没有document对象的使用
- FF中,如何输出选中范围的 HTML内容 ???
- 怎么在js里对文本值进行编码
- 大侠来帮帮忙,我可能中了木马,帮我解密下这段加密过的js脚本可以么? 谢谢
- 为什么点击模态窗口里的链接会打开一个新页面呢?
- outlook Express莫名其妙的就不能用了
- javascript怎么把键码值转换为键值?向各位朋友请教
- HttpUploader2上传控件无法上传?
- 新手求助,table.rows不能直接操作码?
- javascript怎么这么简单,有什么体现技术含量的地方没有啊
//判断返回值不是 json 格式
if (!data.match("^\{(.+:.+,*){1,}\}$"))
{
//普通字符串处理
}
else
{
//通过这种方法可将字符串转换为对象
var rdata = jQuery.parseJSON(data);
}
但是如果不是json数据,下面的alert(data),无法输出
{"state":"00","desc":"ok","src":"index.html","width":330,"height":330,"id":525,"tishi":null,"zhuangtai":1}
这个正则还是会判定为不是json数据
if (!data.match("^\{(.+:.+,*){1,}\}$"))
{
//普通字符串处理
}
这个会成立
如果用正则检查他是否正确,考虑到 json 中可能有对象数组多重嵌套。规则串并不很好写
不如直接用 eval 去转啦 s = '{1,2,3]';
try {
d = eval('(' +s +')');
}catch(e) {
d = '失败';
}
alert(d);