迭代json字符串

时间:2011-02-11 06:10:38

标签: jquery json

这里需要一些帮助。我是Coldfusion的新手,我使用的是CF6。我使用来自CFLib.org的QueryToArrayOfStructures和jsonencode将我的查询转换为结构数组,然后将其序列化为json格式。

我得到的结果如下: [{ “姓氏”: “AAA”},{ “姓”: “BBB”},{ “姓”: “CCC”}]

我需要做的是获取姓氏的值,即aaa,bbb和ccc。我试图使用$ .each但无法使其正常工作:

$.each(data, function(){
  $.each(this, function(key,value){
    resultHtml+='<div class="result">';
    resultHtml+='<h2><a href="#"> Last name: '+ value +'</a></h2>'; 
    resultHtml+='</div>';
  });
});

$('div#results').html(resultHtml);

我在结果div中得到的是数据中的每个字符。例如,我会得到:

[
{
"
l
a
s
t
n
a
m
e

......等等。感谢。

2 个答案:

答案 0 :(得分:4)

您似乎可能首先需要使用parseJSON解析JSON字符串。解析完JSON后。你应该可以在它上面做$ .each()。

Here you go

答案 1 :(得分:1)

可以看到的是第一个循环遍历对象数组而你不必再进行第二次循环。

你可以做的是如下

var data =  [{"lastname":"aaa"},{"lastname":"bbb"},{"lastname":"ccc"}];
var resultHtml = '';

$.each(data, function(key,value){       
    resultHtml+='<div class="result">';
    resultHtml+='<h2><a href="#"> Last name: '+ value.lastname +'</a></h2>';
    resultHtml+='</div>';
});

$('div#results').html(resultHtml);

我希望这可以帮到你!