【问题标题】:Get all text nodes using jquery [duplicate]使用jquery获取所有文本节点[重复]
【发布时间】:2012-12-23 10:00:29
【问题描述】:

可能重复:
How do I select text nodes with jQuery?

在 jquery 中我们可以选择一个元素:

$(#elem).get();

他们是一种使用 jquery 选择元素的所有文本节点的方法吗?

【问题讨论】:

标签: javascript jquery


【解决方案1】:

试试这个,

$('#elem *').contents().filter(function() { 
    return (this.nodeType == 3); 
});

【讨论】:

  • 应该是公认的答案
  • 没错。这涉及#elem 中的所有级别。这应该是被接受的答案。
【解决方案2】:

This是同一个问题

试试这个:

$(elem)
  .contents()
  .filter(function() {
    return this.nodeType === 3; //Node.TEXT_NODE
  });

【讨论】:

  • 谢谢,它对我有用。
  • @CarloBryano 如果它解决了您的问题,您可以通过单击左侧的复选标记来接受答案。
  • @Asad 我会在 10 分钟内接受这个答案。
  • 此代码(包括注释)逐字逐句摘自链接问题的答案。请在属性到期的地方注明。 =)
【解决方案3】:

您可以使用 .text() 来获取元素的文本,但我不知道这是否会完全符合您的要求。您的问题尚不清楚,但是您是否正在寻找与 XSLT 中相同的方式仅匹配文本节点的内容?例如,像这样的 sn-p:

<p>This is <strong>a typical</strong> line of <em>text</em>

将在 XSLT 中产生 4 个匹配的文本节点。这是你的意思吗?

【讨论】:

    猜你喜欢
    • 2014-07-23
    • 1970-01-01
    • 1970-01-01
    • 2011-09-21
    • 2021-08-24
    • 1970-01-01
    • 1970-01-01
    • 2019-02-14
    • 1970-01-01
    相关资源
    最近更新 更多