我在以下jQuery.each()
中有3个输出,我希望echo(append
)在一个标记li
中的每一个。
像:
输出$ .each():how
& hello
& hi
我想要这个:
<ol>
<li>
<a href="">how</a>
</li>
<li>
<a href="">hello</a>
</li>
<li>
<a href="">hi</a>
</li>
</ol>
但是跟随jquery代码在a li中追加所有3次,如:(我不想要这个)
<ol>
<li>
<a href="">howhellohi</a>
</li>
<li>
<a href="">howhellohi</a>
</li>
<li>
<a href="">howhellohi</a>
</li>
</ol>
这是我的jquery代码:
$.ajax({
type: "POST",
dataType: "json",
url: 'get_residence',
data: dataString_h,
cache: false,
success: function (respond) {
$.each(respond.data, function (index, value) {
$('ol li').append('<a href="" class="tool_tip" title="ok">' + value.name[index] + '</a>');
});
},
"error": function (x, y, z) {
alert("An error has occured:\n" + x + "\n" + y + "\n" + z);
}
});
这是我在jquery代码中的回复:
{
"data": [{
"name": "how",
"star_type": "5-hotel",
"site": "www.sasaas.assa",
"service": ["shalo", "jikh", "gjhd", "saed", "saff", "fcds"],
"address": "chara bia paeen"
}, {
"name": "hello",
"star_type": "4-motel",
"site": "www.sasasa.asas",
"service": ["koko", "sili", "solo", "lilo"],
"address": "haminja kilo nab"
}, {
"name": "hi",
"star_type": "3-apparteman",
"site": "www.saassaas.aas",
"service": ["tv", "wan", "hamam", "kolas"],
"address": "ok"
}]
}
如何解决?
答案 0 :(得分:2)
更改
value.name[index]
在您的代码中
value.name
因为那实际上是正确的代码。这就是你使用.each()
答案 1 :(得分:1)
我认为这是你追求的逻辑:
$.each(respond.data, function (index, value) {
$('ol li').eq(index).append('<a href="" class="tool_tip" title="ok">' + value.name[index] + '</a>');
});
这会将数据添加到正确的列表项,而不是所有列表项的相同数据。
答案 2 :(得分:0)
您的代码对我来说似乎是正确的,问题可能在于value.name[index]
,它似乎总是等于howhellohi
。如果你警告value.name[index]
你会得到什么?如果你总是howhellohi
问题出在服务器端功能