[英]How to remove specific tag in jquery?
例:
html = '<font><a>Test Message</a></font>';
html = html.find('font').remove();
预期输出:
<a>Test Message</a>
实际上,此代码无法正常工作。 请帮助我解决我的问题。
当您拥有包含HTML标记的字符串时 ,可以使用字符串替换功能删除不需要的元素。
要仅删除<font>
和</font>
,可以在此处使用正则表达式。
html = '<font><a>Test Message</a></font>'; html = html.replace(/<\\/?font>/g, ''); document.getElementById('result').innerText = html; console.log(html);
<pre id="result"></pre>
正则表达式说明:
/<\\/?font>/g
匹配<font>
和</font>
字符串。 \\/?
将匹配零或一/
。
警告: regex中的g
标志将替换字符串中的所有匹配项。 因此,如果字符串包含多个font
元素,则所有font
元素都将被删除。
注意:使用jQuery的remove()
还将删除<font>
的后代。
您还可以如下使用jQuery的html()
方法:
html = '<font><a>Test Message</a> </font>'; html = $(html).html(); // To show result on page $(document.body).text(html); console.log(html);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
使用jquery unwrap删除a
标记font
的父代,然后将其附加到动态创建的div并调用html
方法以获取结果try:
html = $('<div>').append($(html).find('a').unwrap()).html();
你可以这样使用
$(html).find('font').remove();
如@Tushar注释:注意:这还将删除
<font>
内的anchor元素,从而产生空字符串,
所以你可以使用
html = '<font><a>Test Message</a></font>';
new_html = $(html).find('a').clone(); // this is just an anchor
// now your new html is <a>Test Message</a>
html = $('<font><a>Test Message</a></font>');
html.find('font').contents().unwrap();
console.log(html.html());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.