2013-01-13 101 views
0

我收到一个字符串作为输入,我如何获得div之间的值?例如:正则表达式匹配使用JQuery

var temp = "This is line one.<div>This is line two.</div><div><br></div><div>This is line three with a line break</div><div><br></div><div>&nbsp;</div><div><br></div><div>This is line four with a line break and space.</div>"; 

如何才能将文本句子从数组中取出?我曾尝试.filter和.each'div',但他们都错过了第一个。

回答

1

来获取文本的div之间:

var lines = $('div').map(function(el) { 
    return $(el).text(); 
}).get(); 

注意:这不会提取"this is line one",因为它不是一个div之间。

不过,既然你想包装每个元件都具有li并插入你其实可以跳过数组阶段:

$('div').each(function() { 
    var text = $(this).text(); 
    $('<li>', {'class': 'ui-state-default', text: text}').appendTo('#container'); 
}); 
+0

感谢参宿一,但我在哪里把$(“格”)每个。 (函数(){...? – Freakishly

+0

现在我正在查询div(而不是文本(),因为我想捕获换行符作为单独的列表项)html(),但这不正确: $('#rawtext')。html()。$('div')。each(function(){... – Freakishly