JQuery и XML.Получение узлов в виде элементов списка - PullRequest
1 голос
/ 11 мая 2011

Я пытаюсь разобрать некоторые XML и большинство из них в порядке. Однако у меня возникают проблемы с получением узлов и созданием элементов списка. мой код пока что-то вроде

$(xml).find('section1').each(function (i) {
   var myLink = $(xml).find('link').text();
   $('#set1').find('ul').eq(i).append("<li>"+myLink+"</li>");
});

, но происходит то, что он берет все узлы "myLinks" и помещает их в один <li>. Любые идеи по созданию <li> для каждого myLink узла?

Спасибо

1 Ответ

1 голос
/ 11 мая 2011

Может быть, вам нужно изменить $(xml) на $(this) внутри цикла?

И исправить код дополнения (у вас есть только один список, верно? Если так, удалите материал .eq) какэто:

var $list = $('#set1').find('ul');

$(xml).find('section1').each(function () {
   var myLink = $(this).find('link').text();
   $list.append("<li>"+myLink+"</li>");
});

Если это сработает, вы можете упростить это до следующего:

var $list = $('#set1').find('ul');

$(xml).find('section1 link').each(function () {
   var myLink = $(this).text();
   $list.append("<li>"+myLink+"</li>");
});

И, возможно, еще больше, используя $.map

...