如何通过li
的值找到我需要的data-order
?
该清单载于:
var list = '
<ul id="order_list"> <h3> Order: </h3>
<li data-order="1"></li>
<li data-order="2"></li>
<li data-order="3"></li>
<li data-order="4"></li>
<li data-order="5"></li>
<li data-order="6"></li>
</ul>';
我有一个名为data的对象,我通过ajax调用检索到它。订单值包含在这里,这就是我想要实现的目标
$.each(data, function(index, value) {
// append data['title'] between <li ...> </li>
// where data-order in <li> is data['order']
});
所以我需要在li
中找到var list
data-order
= data['order']
过滤后的data
并附加{{1}}的内容;
我的其他帖子与此相关:jquery append data to html according to order number
答案 0 :(得分:1)
编辑:看过这篇文章jquery append data to html according to order number
首先,从h3
中取出ul
。
其次,在开始使用选择器来操作和追加数据之前,请确保您的list
在DOM中。
第三,不要在JS中使用字符串中的换行符。如果需要多行,请使用连接:
var list = '<h3> Order: </h3>' +
'<ul id="order_list">' +
'<li data-order="1">No featured news here, click to add</li>' +
'<li data-order="2">No featured news here, click to add</li>' +
'<li data-order="3">No featured news here, click to add</li>' +
'<li data-order="4">No featured news here, click to add</li>' +
'<li data-order="5">No featured news here, click to add</li>' +
'<li data-order="6">No featured news here, click to add</li>' +
'</ul>';
var data = [
{
id_news: 3,
title: 'Alex...',
category: 12,
order: 1
},
{
id_news: 12345,
title: 'Obama...',
category: 3,
order: 3
},
];
$(list).appendTo('body');
$.each(data, function(index, value) {
$('#order_list li:eq(' + value['order'] + ')').html(value['title']);
});