Ответ 1
var array = $('li').map(function(){
return $.trim($(this).text());
}).get();
Демо-скрипт -->
http://jsfiddle.net/EC4yq/
Я пытаюсь получить и массив текста после использования текстовой функции, имея список ul, например
<ul>
<li>one
<ul>
<li>one one</li>
<li>one two</li>
</ul>
</li>
</ul>
тогда получите что-то вроде
['one', 'one one', 'one two']
var array = $('li').map(function(){
return $.trim($(this).text());
}).get();
Демо-скрипт -->
http://jsfiddle.net/EC4yq/
Вы просто хотите получить текст из всех ликов?
var resultArray = [];
$('li').each(function(){
resultArray.push($(this).text());
});
Попробуйте следующее:
$("li").map(function(){ return this.innerText })
или это:
$("li").toArray().map(function(i){ return i.innerText })
Вы можете сделать что-то вроде
var children = $(listholder).children();
var array = [];
var i = 0;
$.each(children, function(key, value){
array.push($(this).text());
});
В нескольких ответах игнорируется желаемый формат OP.
Это даст вам то, что вы хотите.
$('li').map(function(){
var $clone = $(this).clone();
$clone.children('*').remove();
return $.trim($clone.text());
}).get()
Fiddle: http://jsfiddle.net/pE9PR/