jquery在循环中动态生成元素id

Phi*_*007 4 jquery

这是一个函数循环,旨在创建元素<li>并为每个元素赋予<li>唯一的ID.但它不起作用.我怀疑在.attr()中使用引用是一个简单的语法错误.但我无法从谷歌那里得到直接答案.

for (i=0;i<array.length;i++)
{
//create HTML element of tag li
$('#suggest').append("<li></li>");
$("li").attr("id",'li'+i);
$('#li'+i).html(array[i]);
}
Run Code Online (Sandbox Code Playgroud)

jAn*_*ndy 5

像这样使用它

$suggest = $('#suggest');
for (i=0;i<array.length;i++) { 
  $suggest.append($('<li/>', {
     id:    'li'+i,
     html:  array[i]
  })); 
} 
Run Code Online (Sandbox Code Playgroud)

为获得最佳性能结果,请执

var str = '';
for (i=0;i<array.length; i++) {
   str += '<li id=\'li' + i + '\'>' + array[i] + '</li>';
}
$('#suggest').append(str);
Run Code Online (Sandbox Code Playgroud)

  • +1,但最好放一个`var suggest = $('#suggest');`在顶部并重复使用它,而不是每次查找它. (2认同)