如何在忽略文本旁边的标签内的某些文本的同时访问元素内的文本?
当文本本身与包含文本的另一个元素相邻时,从jQuery元素中获取文本的好方法是什么?
在这个例子中,我想得到文本:’Text I want’而忽略相邻子元素中的文本:
Text I want to ignore Text I want
我的解决方案是获取标记中的所有文本,然后删除
标记中的所有文本。 这感觉有点尴尬,所以我想知道是否有更好的方法:
var all_the_text = $('span').text(); var the_text_i_dont_want = $('span').find('a').text(); var text_i_want = all_the_text.replace(the_text_i_dont_want, '');
您必须转到文本节点:
var text_i_want = $("span").contents().filter(function(){ return this.nodeType === 3; }).text();
$("span") .clone() .children() .remove() .end() .text();
应该这样做
给予适当的信任:) http://viralpatel.net/blogs/jquery-get-text-element-without-child-element/
删除标记并获取范围内容。 工作演示
Text I want to ignore Text I want var all_the_text = $('span').find('a').remove(); alert($('span').text());