перебрать строку json - PullRequest
       3

перебрать строку json

0 голосов
/ 11 февраля 2011

Нужна небольшая помощь здесь. Я новичок в Coldfusion и использую CF6. Я использовал QueryToArrayOfStructures и jsonencode из CFLib.org для преобразования моего запроса в массив структур, а затем сериализовал его в формат json.

Результат, который я получаю, выглядит так: [{ "Lastname": "ааа"}, { "Lastname": "БББ"}, { "Lastname": "ссс"}]

Что мне нужно сделать, это получить значения фамилии, то есть 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 ]

4 голосов
/ 11 февраля 2011

Возможно, вам сначала понадобится проанализировать строку JSON с помощью parseJSON .После того, как вы проанализировали JSON.Вы должны быть в состоянии сделать $ .each () над ним.

Вот, пожалуйста,

1 голос
/ 11 февраля 2011

Что видно, так это то, что первый цикл проходит через массив объектов, и вам не нужно делать второй цикл.

что вы можете сделать, как показано ниже

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);

Надеюсь, это вам поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...