2014-01-16 79 views
0

我有一個HTML元素,其中包含跨度包含作者的文本名稱,我需要將作者姓名的每個範圍分別列出li元素列表如何使用JQuery做到這一點?通過childs JQuery循環,並添加到另一個列表

var all_author_names = $('.postcontent .entry_content #author-name'); // get list of spans containg names 
var li_to_modifiy = $('.entry_meta > li:nth-child(3)') // gets list of li elements that I need to add each name respectively 

編輯:

簡體HTML:

<div class="postcontent nobottommargin clearfix"> 
    <ul class="entry_meta clearfix"> 
     <li class="hide"></li> 
     <li></li> 
     <li><span>|</span><a href="#"><i class="icon-link"></i>Permalink</a></li> 
    </ul> 
    <span class="page-divider"><span></span></span> 
    <div class="entry_content"> 
     <p></p><div class="entry_image"> 
     <span id="author-name" class="hide">Karen Hutchins</span> 
    </div> 
</div> 

</div> 

注:postcontent類是自動生成的,我有很多的它,而不是唯一的一個。

爲了把事情說清楚:

1-讓利all_author_names包含這個網站:

<span>my name</span> 
<span>other name</span> 
<span>your name</span> 

2 - 我需要的postcontent類中的每個li元素有相關的一個跨度到其索引,所以結果將是:

<div class="postcontent nobottommargin clearfix"> 
    <ul class="entry_meta clearfix"> 
     <li class="hide"></li> 
     <li><span>my name</span></li> 

其他postcontent類

<div class="postcontent nobottommargin clearfix"> 
    <ul class="entry_meta clearfix"> 
     <li class="hide"></li> 
     <li> <span>other name</span></li> 
+0

你能後置HTML? – tilda

+0

問題不是很清楚,你的郵政編碼比較好。 –

+0

我發佈了HTML。 –

回答

1

但我猜,你想是這樣的:

var all_author_names = $('.postcontent .entry_content #author-name'); // get list of spans containg names 
var li_to_modifiy = $('.entry_meta > li:nth-child(3)') // gets list of li elements that I need to add each name respectively 

all_author_names.find('span').each(function(a,b){ 
console.log(b.text()); 
}); 

li_to_modifiy.find('li').each(function(a,b){ 
console.log(b.text()); 
}); 

修訂回答您更新的問題:

$('.postcontent').each(function(a,b){ 
    $(b).find('li:eq(1)').html('<span>'+$.trim($(b).find('#author-name').text())+'</span>'); 
    console.log($.trim($(b).text())); 
}); 

看到JSFiddle

+0

工作,但給每個李相同的作者的名字! –

+0

請注意,它僅在將'.entry-meta> li:eq(2)'更改爲'.entry_meta> li:nth-​​child(3)'時纔有效' –

+0

仍給出相同的作者姓名,而不是使用li: eq(2)但是對li:n-child(3)做了。我雖然給了+1! –