jquery循环动态生成元素id

标签 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]);
}

最佳答案

像这样使用

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

为了获得最佳性能结果,请执行以下操作:

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

关于jquery循环动态生成元素id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2984077/

相关文章:

javascript - 如何清除 JSON 的缓存

javascript - Wicket 7 [WebPage] - jquery 请求创建新实例 WebPage

jquery - 检测div的底部是否接触浏览器窗口的底部?

javascript - 如何阻止 JavaScript 函数返回值

javascript - 如何从异步调用返回响应?

javascript - 从父范围数组中删除元素

jquery - 在 JQuery ajax 中,如何正确处理 HTTP 408 错误?

javascript - 动态地将面板添加到 Bootstrap 3 Accordion

javascript - 试图只滚动 div,而不是整个页面

javascript - 如何将字符串转换为数组选择器的点表示法