在jQuery中我想删除div中的所有HTML

mrb*_*lah 71 jquery

我有一个div,我想删除该div内的所有HTML.

我怎样才能做到这一点?

Pao*_*ino 140

你想使用函数:

$('#mydiv').empty();
Run Code Online (Sandbox Code Playgroud)


bar*_*art 72

我不认为empty()或者html()你在寻找什么.我想你正在寻找像strip_tagsPHP 这样的东西.如果你想这样做,那么你需要添加这个功能:

jQuery.fn.stripTags = function() {
    return this.replaceWith( this.html().replace(/<\/?[^>]+>/gi, '') );
};
Run Code Online (Sandbox Code Playgroud)

假设这是你的HTML:

<div id='foo'>This is <b>bold</b> and this is <i>italic</i>.</div>
Run Code Online (Sandbox Code Playgroud)

然后你做:

$("#foo").stripTags();
Run Code Online (Sandbox Code Playgroud)

这将导致:

<div id='foo'>This is bold and this is italic.</div>
Run Code Online (Sandbox Code Playgroud)

  • 就个人而言,我只会做$("#foo").html($("#foo").text()); (29认同)
  • 海报可能不想这样做,但我做到了.+1,谢谢. (6认同)
  • 我认为他的意思是删除所有内容.仍然+1为后代的好答案. (5认同)

kar*_*m79 11

另一种方法是将html设置为空字符串:

$('#mydiv').html('');
Run Code Online (Sandbox Code Playgroud)