我有数组标签= ['str1','str2'];
我需要的是通过此模板将此标签实现为ul -
<li><span>str1</span></li>
<li><span>str2</span></li>
起初我只有这个标签:
<ul id="tags">
</ul>
我怎么能在jquery上做呢?
编辑:sry我现在修改了问题plz检查
答案 0 :(得分:2)
要生成整个列表内容,请尝试::
var tags = ['str1', 'str2'];
var lis = $.map(tags, function(element, index) {
return $("<li />").append($("<span></span>").text(element));
});
$("#tags").append(lis);
答案 1 :(得分:1)
尝试
var i = 0;
var my_arr = ['str1','str2'];
$(my_arr).each(function(){
$('#tags').append('<li><span>' + this + '</li></span>');
});
请参阅此FIDDLE
答案 2 :(得分:1)
有很多方法可以实现这一点,但是使用documentFragment
可以避免多个DOM重排。
var $frag = $(document.createDocumentFragment());
$.each(tags, function (index, text) {
$frag.append($('<li><span>' + text + '</span></li>'));
});
$('#tags').append($frag);
答案 3 :(得分:0)
var tags = ['str1', 'str2'];
$(tags).each(function)({
$("#tags").append('<li><span>str1</span></li><li><span>'+this+'</span></li>');
});