2013-05-15 5 views
18

Ich versuche von Text zu erhalten und Array nach der Text-Funktion, eine ul Liste mit wieJQuery, erhält eine Reihe von text()

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

dann etwas bekommen wie

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

Bitte senden Sie die jQuery Sie versucht haben. – j08691

+0

Ich arbeitete mit jstree, weil ich meinen Code nicht paste, weil es zu lang ist, aber alle Ideen von hier helpe viel auf, wie man mein Problem löst. Danke an alle – Carlos

Antwort

5

Sie wollen nur den Text von allen li's bekommen?

var resultArray = []; 

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

Sie tun könnte so etwas wie

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

Einige der Antworten der OP des gewünschten Format ignorieren.

Dies wird Ihnen geben, was Sie wollen.

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

Fiddle: http://jsfiddle.net/pE9PR/

2

Versuchen Sie folgendes:

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

oder dies:

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