如果删除div,我该怎么做:
<div>...</div>
or
<div>"</div>
我知道我能做到:
$("div:empty").remove();
但在这种情况下,这显然不正确,因为div不是空的,因为它有点或&#34;
我对纯文本的意思是:
<div>MY TEXT</div>
基本上任何文字,但点或&#34;
答案 0 :(得分:2)
您可以检查<div>
是否有孩子,如果没有,您可以将其删除。
var pattern = new RegExp(/^[\.|"]+$/i);
if (pattern.test($(this).text().trim()))
$(this).remove();
<强>段强>
$(function () {
$("div").each(function () {
var pattern = new RegExp(/^[\.|"]+$/i);
if (pattern.test($(this).text().trim()))
$(this).remove();
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>....</div>
<div>Has pure text Not Removed</div>
<div>Also the below are removed.</div>
<div>...</div>
<div>"</div>
答案 1 :(得分:2)
您可以使用以下filter()
方法。在filter
中用空字符串替换所有"
和.
,如果字符串为空,则返回true
。
$('div').filter(function() {
var text = $(this).text().trim().replace(/\"|\./g,'');
return !text;
}).remove()
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div>Any text</div>
<div>...</div>
<div>"</div>
答案 2 :(得分:1)
div
$("div").replace(/\+/g, "");
元素的所有字符串
如果替换元素等于&#34;&#34; (是空的),将其删除。
if($("div").replace(/\+/g, "") == "") {
$("div").remove();
}