【问题标题】:replace innerhtml string with specific string in jquery用jquery中的特定字符串替换innerhtml字符串
【发布时间】:2019-12-12 00:51:27
【问题描述】:

我喜欢用特定的字符串替换任何标签,然后在 console.log 上打印它们

var str ='<p><img src=""><img src=""><img src=""><div><img src=""></div><div></div><img src=""><div></div></p>'


var result = $(str).find('img').replaceWith("<$1>")

我期待类似的东西

var str ='<p><$1><$1><$1><div><$1></div><div></div><$1><div></div></p>'

转换它们后会很棒我想打印结果

【问题讨论】:

  • $(str) 甚至不起作用,因为那不是 有效 选择器
  • 啊....有没有办法把整个选择器带上然后转换它们?
  • 您需要将它们添加到 html 本身中,然后执行选择操作。您将需要 style="display: none;" 父 p 元素将它们全部隐藏

标签: jquery html tags


【解决方案1】:

您可以使用.html() 和一些正则表达式将您带到那里。当然,使用正则表达式读取 HTML will always lead to sadness 但有时人们在别无选择时仍然这样做。

const originalHtml = $('#some-container').html()

const convertedHtml = originalHtml.replace(/<p>/g, '<foo>').replace(/<\/p>/g, '</foo>')

Example fiddle

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-08-22
    • 1970-01-01
    • 1970-01-01
    • 2012-08-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多