如何使用Jquery删除html标记?

如何使用Jquery删除html标记?,jquery,Jquery,我们如何使用Jquery删除html标记,例如我们有这个html <div><dd>hello world</dd></div> 我想删除标记并生成此输出 <div>hello world</div> 例如,您可以使用: $("dd").replaceWith(function() { return $(this).contents(); }); .您可以使用,例如: $("dd").replaceWith(funct

我们如何使用Jquery删除html标记,例如我们有这个html

<div><dd>hello world</dd></div>
我想删除标记并生成此输出

<div>hello world</div>
例如,您可以使用:

$("dd").replaceWith(function() { return $(this).contents(); });
.

您可以使用,例如:

$("dd").replaceWith(function() { return $(this).contents(); });

.

要删除所有子节点,仅保留文本,还可以尝试:

$("div").html(function(i, h){ return $(h).text(); });

.

要删除所有子节点,仅保留文本,还可以尝试:

$("div").html(function(i, h){ return $(h).text(); });

.

这是我用的。不过请注意,只有给div一个类或id,这才有效

var string = $('div.test').html().replace('<dd>', '').replace('</dd>', '')
$('div.test').html(string);
这只需将div的内容放入一个带有.html的变量中,您不仅获取文本,还获取所有html,然后去掉dd标记,然后重新填充

编辑:

实际上,这里有一个更好的方法。使用这段代码,您不必依赖div的类或id

    container = $('div').find('dd').parent();
    var test = container.html().replace('<dd>', '').replace('</dd>', '')
    container.html(test);

这是我用的。不过请注意,只有给div一个类或id,这才有效

var string = $('div.test').html().replace('<dd>', '').replace('</dd>', '')
$('div.test').html(string);
这只需将div的内容放入一个带有.html的变量中,您不仅获取文本,还获取所有html,然后去掉dd标记,然后重新填充

编辑:

实际上,这里有一个更好的方法。使用这段代码,您不必依赖div的类或id

    container = $('div').find('dd').parent();
    var test = container.html().replace('<dd>', '').replace('</dd>', '')
    container.html(test);

您可以始终使用if语句检查div是否包含一个dd元素,如果是这样,则从dd复制内容,删除dd元素,然后将内容注入div


我对javascript了解不多,但假设您使用正确的对象和一些简单的算法,任何事情都可以做到

您始终可以使用if语句检查div是否包含一个dd元素,如果是这样,则从dd复制内容,删除dd元素,然后将内容注入div


我对javascript了解不多,但假设您使用正确的对象和一些简单的算法,任何事情都可以做到

是否仅删除开头标记?还是开始和结束标记?是否仅删除开始标记?或者开始和结束标记?我检查了它,但它也删除了dd标记中的内容,即Hellowolrd@user438860-除非你的浏览器不支持HTML5标签IE,否则它不应该这样做?在这种情况下,您需要类似HTML5的东西:$div.htmlfunctioni,h{return$h.text;};这真的工作感谢我检查了它,但它也删除了内容,是在dd标签,这是你好wolrd@user438860-除非你的浏览器不支持HTML5标签IE,否则它不应该这样做?在这种情况下,您需要类似HTML5的东西:$div.htmlfunctioni,h{return$h.text;};这真的很有用谢谢我的编辑,我更改了它,这样你就不需要使用类来防止你无权访问它,因为你似乎无权删除dd?请看我的编辑,我更改了它,这样你就不需要使用类来防止你无权访问它,因为你似乎无权删除dd?