<p></p> // return true
<p>something</p> //return false
我想过使用jquery的contains(),但我认为在纯js中有更好的方法吗?
答案 0 :(得分:1)
return element.innerHTML.trim().length == 0;
答案 1 :(得分:1)
您可以在普通JS中使用childNodes
或children
。两者都返回包含元素子元素的类似数组的集合。两个集合都有length
属性。
请注意,这两个属性都是实时集合。您可能希望将它们浅层复制到数组中。这是让所有身体的孩子得到的一个例子。
var hasContent = Array.prototype.slice.call(document.body.children).length;
答案 2 :(得分:1)
我会使用旧的innerHTML来避免使用JQuery:
function hasSomething(id) {
var element = document.getElementById(id);
if (element && (element.innerHTML || '').trim())
return true;
else
return false;
}
答案 3 :(得分:0)
假设您有一个标识为mydiv
<p id='mydiv'>Something</p>
if($('#mydiv').is(':empty'))
或
if($('#mydiv:empty').length)
可以检查它是否为空。
答案 4 :(得分:0)
类似的东西:
var myTextField = document.getElementById('myText');
if(myTextField.value != "")
alert("nothing")
else
alert("Would you please enter some text?")
}
答案 5 :(得分:0)
以下代码中的检查功能将完成工作,您只需要调用它。我在jquery和javscript中附加了代码。
HTML:
<p id="data">Some text</p>
Jquery:
<script>
function check()
{
var len= $("#data").text().length;
if(len==0)
return true;
else
return false;
}
$(document).ready(function(){
document.write(check()); // call check function
});
</script>
使用Javascript:
<script>
function check() {
var x = document.getElementById("data").innerHTML;
if(x.length==0)
return true;
else
return false;
}
</script>