1

I have array tags = ['str1', 'str2'];

And what i need is implement this tags to ul by this template -

<li><span>str1</span></li>
<li><span>str2</span></li>

At first i have only this tag:

<ul id="tags">

</ul>

How can i do it on jquery?

Edited : sry i'm modified question plz check now

4

4 回答 4

2

要生成整个列表内容,请尝试::

var tags = ['str1', 'str2'];
var lis = $.map(tags, function(element, index) {
    return $("<li />").append($("<span></span>").text(element));
});
$("#tags").append(lis);

见:http: //jsfiddle.net/SYQpa/1/

于 2013-08-26T04:28:06.767 回答
1

有很多方法可以实现这一点,但是使用 adocumentFragment将避免多次 DOM 重排。

var $frag = $(document.createDocumentFragment());

$.each(tags, function (index, text) {
    $frag.append($('<li><span>' + text + '</span></li>'));
});

$('#tags').append($frag);
于 2013-08-26T04:28:37.747 回答
1

试试喜欢

var i = 0;
var my_arr = ['str1','str2'];
$(my_arr).each(function(){
     $('#tags').append('<li><span>' + this + '</li></span>');
});

看到这个小提琴

于 2013-08-26T04:25:30.860 回答
0
var tags = ['str1', 'str2'];

$(tags).each(function)({
 $("#tags").append('<li><span>str1</span></li><li><span>'+this+'</span></li>');
});
于 2013-08-26T04:30:11.677 回答