2012-11-17 50 views
0

我想將選定的項目保存到數組中。保存數組中選定元素的值

例如:

var list = $('ul.theList li'), 
      result = $('div#result'); // other div 
      content; 

for(var i=0; i < list.length; i++){ 
     content[i] = $('ul.theList li')[i]; 
} 

$(result).text(content); // the result 

這行不通。

+0

'含量= []'你缺少初始化 – mplungjan

回答

1

有兩個問題,第一你沒有定義content作爲一個數組,並與該代碼你應該定義數組元素應如何加入:

var list = $('ul.theList li'), 
      result = $('div#result'), 
      content = []; 

for(var i=0; i < list.length; i++){ 
     content.push($('ul.theList li:eq(' + i + ')').text()); 
     /* or: 
     content.push($('ul.theList li').eq(i).text()); 
     */ 
} 

$(result).text(content.join(', ')); 

JS Fiddle demo using :eq() selector

JS Fiddle demo using .eq() method

我用.push()插入li的文本(我假設,在這裏,你的文本,而不是節點本身)的content陣列,而不是明確定義的索引。

參考文獻:

+0

是數組是沒有定義,謝謝! – Leoh

1

更好的使用jQuery現在你擁有了它

版本1

var list = $('ul.theList li'), 

$('#result').text(list.text()); 

版本2

var list = $('ul.theList li'); 
list.each(function(i) { 
    $('#result').append(i+".: "+$(this).text()+"<br/>"); 
}); 
+0

最簡單的方法......謝謝! – Leoh

+0

那麼爲什麼不接受我的?我沒有打擾公佈eq(i),因爲這沒有必要。 – mplungjan

相關問題