2013-05-15 3 views
18

私はjqueryの、テキストの配列を(取得)

<ul> 
    <li>one 
    <ul> 
     <li>one one</li> 
     <li>one two</li> 
    </ul> 
    </li> 
</ul> 

のようなULリストを持つ、テキスト機能を使用した後に取得し、テキストの配列しようとしていますが、その後

['one', 'one one', 'one two'] 
+2

をあなたが試したのjQueryを投稿してください。 – j08691

+0

私はjstreeと一緒に作業していました。私のコードは長すぎますので、私はコードを書いていません。しかし、ここからのすべてのアイデアは、私の問題を解決する方法について多くの助けになります。ありがとうございます – Carlos

答えて

33
var array = $('li').map(function(){ 
       return $.trim($(this).text()); 
      }).get(); 

http://api.jquery.com/map/

デモフィドル-->http://jsfiddle.net/EC4yq/

+0

'.toArray()'に呼び出しを連鎖させたいかもしれません。 – TrueWill

+0

'get()'メソッドは何をしますか?私たちは '$( 'li')を行うことができます。toArray()。map((li)=> {return li.innerText.trim();})' – mangatinanda

5

のような何かを得ますあなたはすべての李のテキストを取得したいですか?

var resultArray = []; 

$('li').each(function(){ 
    resultArray.push($(this).text()); 
}); 
1

あなたは答えのいくつかの

var children = $(listholder).children(); 
var array = []; 
var i = 0; 
$.each(children, function(key, value){ 
array.push($(this).text()); 
}); 
0

ような何かを行うことができOPの目的の形式を無視します。

これは、あなたに必要なものを提供します。

$('li').map(function(){ 
    var $clone = $(this).clone(); 
    $clone.children('*').remove(); 
    return $.trim($clone.text()); 
}).get() 

フィドル:

$("li").map(function(){ return this.innerText }) 

またはこの:http://jsfiddle.net/pE9PR/

2

はこのお試しください

$("li").toArray().map(function(i){ return i.innerText }) 
関連する問題