如何在Javascript中读取JSON(服务器响应)?

我在一个服务器上发送一些请求,它回复我:
{"COLUMNS":["REGISTRATION_DT","USERNAME","PASSWORD","FNAME","LNAME","EMAIL","MOBILE","FACEBOOK_ID"],"DATA":[["March,17 2012 16:18:00","someuser",somepass,"somename","somesur","someemail",sometel,"someid"]]}

我尝试了很多,但似乎没有为我工作!

var xml2 = this.responseData;
var xml3 = xml2.getElementsByTagName("data");
Ti.API.log(xml3.FNAME);

对于这个代码,我得到“null”.

任何帮助将不胜感激!

解决方法

如果你想使用JSON格式,你的问题是[…]中的数据也需要成对,并分组在{…}像 here.

例如,

{ 
      "sales": [ 
         { "firstname" : "John","lastname" : "Brown" },{ "firstname" : "Marc","lastname" : "Johnson" }
      ] // end of sales array
    }

所以你可能有:

{"COLUMNS": [ 
  {"REGISTRATION_DT" : "19901212","USERNAME" : "kudos","PASSWORD" : "tx91!#1",... },{"REGISTRATION_DT" : "19940709","USERNAME" : "jenny","PASSWORD" : "fxuf#2",{"REGISTRATION_DT" : "20070110","USERNAME" : "benji12","PASSWORD" : "rabbit19",... }
 ]
}

如果服务器正在向您发送一些您称为res的内容,那么您可以在Javascript中解析它:

var o=JSON.parse(res);

然后,您可以在列中循环遍历每个实例,如下所示:

for (var i=0;i<o.COLUMNS.length;i++)
{  
        var date = o.COLUMNS[i].REGISTRATION_DT; .... 
}

相关文章

kindeditor4.x代码高亮功能默认使用的是prettify插件,prett...
这一篇我将介绍如何让kindeditor4.x整合SyntaxHighlighter代...
js如何实现弹出form提交表单?(图文+视频)
js怎么获取复选框选中的值
js如何实现倒计时跳转页面
如何用js控制图片放大缩小