我在循环和中断方面遇到了一些问题。 当我达到第10个元素时,我有一个数组n我必须做smth。例如:
$.each(videoDataList,function(k){
html = ''
if(k % 10 == 0){
html += (k == 0 ? "<ul>" : "</ul><ul>");
}
html += '<li class="item">'
html += '<a href="#" id="vl_'+(k+1)+'">'
html += '<span class="score_journalist" id="num_'+videoDataList[k].score_journalist+'">'+videoDataList[k].score_journalist+'</span>'
html += '<img src="/files/preview/s/'+videoDataList[k].video_id+'.jpg" alt="" />'
html += '<span class="rating clearfloat">'
html += '<span class="votes"><span class="title">рейтинг:</span> <span class="count">'+videoDataList[k].score_user+'</span></span>'
html += '</span>'
html += '<span class="filter"></span>'
html += '</a>'
html += '<img src="/files/preview/b/'+videoDataList[k].video_id+'.jpg" alt="" class="big"/>'
html += '</li>'
if(k == videoDataList.length){
html += "</ul>";
}
$(html).appendTo('#videoLists ul.list')
})
我希望有10个元素LI并将它们放入UL。然后我想将我的数组从第11个元素循环到第21个元素,再次从11到21的LI我想要放入另一个UL。 有可能吗?
答案 0 :(得分:1)
if(k % 10 == 0){
html += (k == 0 ? "<ul>" : "</ul><ul>");
}
在for循环后输入此内容。
同样在for循环结束之前添加:
if(k == Array.length){
html += "</ul>";
}
这是你要找的东西吗?
整个代码:
html = ''
$.each(videoDataList,function(k){
if(k % 10 == 0){
html += (k == 0 ? "<ul>" : "</ul><ul>");
}
html += '<li class="item">'
html += '<a href="#" id="vl_'+(k+1)+'">'
html += '<span class="score_journalist" id="num_'+videoDataList[k].score_journalist+'">'+videoDataList[k].score_journalist+'</span>'
html += '<img src="/files/preview/s/'+videoDataList[k].video_id+'.jpg" alt="" />'
html += '<span class="rating clearfloat">'
html += '<span class="votes"><span class="title">рейтинг:</span> <span class="count">'+videoDataList[k].score_user+'</span></span>'
html += '</span>'
html += '<span class="filter"></span>'
html += '</a>'
html += '<img src="/files/preview/b/'+videoDataList[k].video_id+'.jpg" alt="" class="big"/>'
html += '</li>'
if(k == videoDataList.length){
html += "</ul>";
}
})
$(html).appendTo('#videoLists ul.list') $(html).appendTo('#videoLists ul.list')
答案 1 :(得分:1)
使用模运算符很容易:
for(k=0;k<=Array.length;k++){
if(k % 10 == 0 || k == 0)
{
if(k > 0)
{
html += '</ul>'
}
html += '<ul>'
}
html += '<li class="item">'
html += '<a href="#" id="vl_'+(k+1)+'">'
html += '<span id="num_'+Array[k].prop1+'">'+Array[k].prop1+'</span>'
html += '<img src="/files/preview/s/'+Array[k].prop2+'.jpg" alt="" />'
html += '<span class="rating clearfloat">'
html += '<span class="votes">'+Array[k].prop3+'</span>'
html += '</span>'
html += '<span class="filter"></span>'
html += '</a>'
html += '<img src="/files/preview/b/'+Array[k].prop4+'.jpg" alt="" class="big"/>'
html += '</li>'
if(k == Array.length)
{
html += '</ul>'
}
}
答案 2 :(得分:0)
不确定。将其添加到循环的顶部和底部。
if (k % 10 === 0) {
// do some work
}