我需要知道删除里面所有空p后div.html()的长度是什么
答案 0 :(得分:4)
var div = $('div'),
dHtml = div.html(),
dHtml = dHtml.replace(/<p.*?>\s*<\/p>/g,'');
console.log(dHtml.length);
编辑:如果p标签有id,class或者其他东西,则更改RegEx。 (即<p class="foo"></p>
)
答案 1 :(得分:2)
如果您的意思是需要当时的元素数量,那么您可能正在寻找children()
方法。这是非常不言自明的。我们还将使用(直观命名的)remove()
方法。
所以,
// html
<div id="content">
<p></p>
<p></p>
<img />
<blockquote></blockquote>
</div>
// javascript
(function($){
var $children = $('#content').children();
var len = $children.length - $children.remove().length;
})(jQuery);
答案 2 :(得分:1)
你可以div.html().length
删除空p标签:Remove elements with only a space using jQuery
$('#divid p').filter(function() {
return $.trim($(this).text()) === '';
}).remove();
以下是使用jQuery中的filter method的工作示例:
答案 3 :(得分:0)
这应该在删除后给出长度
$('div').remove('p').length;
答案 4 :(得分:0)