Tôi có một div và tôi muốn xóa tất cả HTML bên trong div đó.Trong jQuery, muốn xóa tất cả HTML bên trong div
Tôi làm cách nào để thực hiện việc này?
Tôi có một div và tôi muốn xóa tất cả HTML bên trong div đó.Trong jQuery, muốn xóa tất cả HTML bên trong div
Tôi làm cách nào để thực hiện việc này?
Bạn muốn sử dụng các chức năng empty:
$('#mydiv').empty();
Một cách khác chỉ là để thiết lập html để chuỗi rỗng:
$('#mydiv').html('');
Tôi không nghĩ empty()
hoặc html()
là những gì bạn đang tìm. Tôi đoán bạn đang tìm kiếm một cái gì đó như strip_tags
trong PHP. Nếu bạn muốn làm điều này, hơn bạn cần phải thêm chức năng này:
jQuery.fn.stripTags = function() {
return this.replaceWith(this.html().replace(/<\/?[^>]+>/gi, ''));
};
Giả sử đây là HTML của bạn:
<div id='foo'>This is <b>bold</b> and this is <i>italic</i>.</div>
Và sau đó bạn làm:
$("#foo").stripTags();
nào sẽ cho kết quả in:
<div id='foo'>This is bold and this is italic.</div>
var htmlJ = $('<p><span>Test123</span><br /><a href="http://www.google.com">goto Google</a></p>');
console.log(htmlJ.text()); // "Test123goto Google"
Nếu văn bản là cảnh báo ' 'nó sẽ cảnh báo, vì vậy nó không an toàn. – umpirsky
function stripsTags(text)
{
return $.trim($('<div>').html(text).text());
}
Nếu văn bản là cảnh báo ' 'nó sẽ cảnh báo, vì vậy nó không an toàn. – umpirsky
giả sử bạn có một html như thế này
<div class="prtDiv">
<div class="first">
<div class="hello">Hello</div>
<div class="goodbye">Goodbye</div>
</div>
</div>
nếu bạn muốn tất cả html dưới div "đầu tiên" để loại bỏ vĩnh viễn. chỉ cần sử dụng này
$('.first').empty();
kết quả sẽ như thế này
<div class="prtDiv">
<div class="first">
</div>
</div>
tạm (nếu bạn muốn thêm chúng một lần nữa), chúng tôi có thể thử tách() như
$('.first').detach();
Tôi nghĩ rằng ông muốn nói xóa tất cả nội dung. Vẫn +1 để có câu trả lời tốt cho các thế hệ tương lai. –
Cá nhân tôi chỉ làm $ ("# foo") html ($ ("# foo"). Văn bản()); – Killroy
Áp phích có thể không muốn làm điều này nhưng tôi đã làm. 1, cảm ơn. –