gpt4 book ai didi

javascript - 替换 html 中的文本并保留事件

转载 作者:行者123 更新时间:2023-11-29 19:44:02 27 4
gpt4 key购买 nike

我需要在正文的 html 中替换这样的一种模式:“{12345,abcd}”,但我不会丢失 child 的事件。我试过那个代码:

$("body").html($("body").html().replace(/[{]{1}([\d]+)[,]{1}(.*?)[}]{1}/g, "<span>Code:$1</span> - <span>Text:$2</span>"))

但这会杀死元素的所有事件。我该怎么办?

最佳答案

您有 3 个选择:

  1. 在您的 IDE 中打开相关 View ,对其进行修改,然后像绅士一样生成所需的标记。 Modifying HTML using regex is a bad practice.

  2. 仅选择可以具有该字符串的后代元素并替换它们的 textContent,而不是重置整个正文内容。

    $('.elements').text(function(_, oldText) {
    return oldText.replace('foo', 'bar');
    });
  3. 替换正文内容并委托(delegate)所有事件:

    $(document).on('event', 'element', fn);

    您还可以在绑定(bind)事件处理程序之前替换正文的内容。这当然不会破坏 future 的事件处理程序。

关于javascript - 替换 html 中的文本并保留事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21184770/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com