在jQuery中使用Next()

在jQuery中使用Next(),jquery,Jquery,我有: 但是这也得到了a标签,那么我应该如何只得到文本呢?我正在考虑下一步,但它不起作用: var val = $.trim($('#container').find('.comment_text').text()); 谢谢使用jQuery获取未包装的文本节点要复杂一些: var val = $.trim($('#container').find('.comment_text a').next().text()); 你也应该修剪一下 你也可以这样做: $('#container .comm

我有:

但是这也得到了a标签,那么我应该如何只得到文本呢?我正在考虑下一步,但它不起作用:

var val = $.trim($('#container').find('.comment_text').text());

谢谢

使用jQuery获取未包装的文本节点要复杂一些:

 var val = $.trim($('#container').find('.comment_text a').next().text());
你也应该修剪一下

你也可以这样做:

$('#container .comment_text').contents().filter(function() {
    return this.nodeType === 3;
}).text();

您可以临时删除锚定以获取剩余文本,通过克隆它,您不会中断DOM元素。

您可以尝试以下操作:

$('#container').clone().find('a').remove().end().text();

您需要克隆div并删除锚点,然后您将获得以下文本:

var val = $.trim($('.comment_text').find("a").html();

类似于:var val=$.trim$'container'.find'.comment_text a'.text;应该work@user123_456但事实并非如此!即使有.comment\u文本a?注意这是一个标记,它不是,你打开控制台了吗?@adeneo对不起,我忘了。clone var txt=$'container'。clone.find'a'。remove.end.text;现在它可以工作了,但是为什么它是一个社区维基我仍然不明白。对不起,我在出门的时候在手机上很快就做到了。感谢社区的编辑;是的,需要先找到,然后删除。
$('#container').clone().find('a').remove().end().text();
var val = $.trim($('.comment_text').find("a").html();
var clone = $('.comment_text').clone();
clone.find('a').remove();

var val = $.trim(clone.text());