【问题标题】:What is the equivalent of document.createTextNode(' ') in jQueryjQuery中document.createTextNode('')的等价物是什么
【发布时间】:2011-03-25 15:38:45
【问题描述】:

我可以在 jquery 中使用什么来代替 document.createTextNode(' ') js 行。

我正在尝试这样做:

js:divButtons.appendChild(document.createTextNode(' '));

jquery : $("#divButtons").append(?????);

【问题讨论】:

  • 但它是关于 createElement 函数而不是 createTextNode

标签: jquery


【解决方案1】:

在 jQuery 中没有 createTextNode 的等价物。您始终可以使用 DOM 方法,或者围绕它编写一个 jQuery 包装器。您可能会发现最接近的是在创建新元素时,您可以单独指定文本部分。

$('<div>', {
    text: '<hello world>'
});

【讨论】:

    【解决方案2】:

    我知道这是一个老问题,但我一直在寻找同样的东西......

    我知道的最接近的方法是 .text() 方法。

    这以与创建新 TextNode 相同的方式安全地转义文本,但它只能用于指定节点的全部内容。

    例如

    var mynode = jQuery('#node-id');
    mynode.text('A<B implies B>A');
    

    【讨论】:

      【解决方案3】:

      请注意现有答案。他们展示了如何附加 HTML。 HTML 不是文本。将文本视为 HTML 是 a) 错误和 b) 危险。

      这是一个理智的解决方案:

      $('selector').append(document.createTextNode('text < and > not & html!'))
      

      这仅将 jQuery 用于附加部分。使用 createTextNode 没有错。 jQuery 在其 text(str) 函数内部使用 createTextNode。

      【讨论】:

        【解决方案4】:
        var jqTextNode = $(document.createTextNode(' '));
        

        创建文本节点的 jquery 表示。我认为没有可靠的捷径。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-07-23
          • 2012-09-22
          • 2023-04-04
          • 2010-10-08
          • 2012-08-05
          • 2012-05-25
          • 2015-09-21
          • 2011-07-07
          相关资源
          最近更新 更多