我有一个这样的 ul-list:
<ul class="abstimm_ziel"><li>Content 1</li><li>Content 2</li></ul>
我想加载这个 xml 文件的内容:
<?xml version="1.0" encoding="UTF-8"?>
<abstimmer>
<seite id="2">
<klick>3</klick>
<klick>5</klick>
<klick>9</klick>
</seite>
</abstimmer>
按照其顺序进入 li 元素(第一个节点进入第一个 li 元素,第二个进入第二个...)。如果节点多于 li-elements,则应忽略不必要的节点。我尝试这样做:
$(document).ready(function () {
$.ajax({
type: "GET",
url: "abstimmer.xml",
dataType: "xml",
success: function (xml) {
$(xml).find('seite').each(function () {
var klick = $(this).find('klick');
$( ".abstimm_ziel li" ).each(function( index ) {
//And here my brain crashed
})
})
}
})
})
在应该开始真正行动的那一行,我分手了。我尝试做的是使用 each() 遍历 ul-list,并将适当节点的 xml 内容放入其中的 li 中。我现在需要做什么?
最佳答案
由于您查看的是 klick
节点,我将只使用 eq
method像这样:
var $lis = $(".abstimm_ziel li");
$(xml).find('klick').each(function (index) {
if (index < $lis.length) {
$lis.eq(index).html($(this).text());
}
});
这将遍历所有的 klick
节点,如果 DOM 中有匹配的 li
,则将其内容设置为 klick 的内容
节点。
关于javascript - 将 XML 内容加载到 li,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28029847/