检查一个div是否不存在与JavaScript
检查一个div是否存在相当简单
if(document.getif(document.getElementById('if')){ }
但是我怎么能检查一个具有给定ID的div是否不存在?
var myElem = document.getElementById('myElementId'); if (myElem === null) alert('does not exist!');
if (!document.getElementById("given-id")) { //It does not exist }
如果具有given-id
的元素不存在,则语句document.getElementById("given-id")
返回null
,并且null
是falsy,这意味着在if语句中计算时它将转换为false。 ( 其他的谬误值 )
尝试获取带有ID的元素,并检查返回值是否为空:
document.getElementById('some_nonexistent_id') === null
如果你使用jQuery,你可以这样做:
$('#some_nonexistent_id').length === 0
检查我的JavaScript和JQuery代码:
JavaScript的:
if (!document.getElementById('MyElementId')){ alert('Does not exist!'); }
JQuery的:
if (!$("#MyElementId").length){ alert('Does not exist!'); }
如果没有这样的元素, getElementById
将返回null
。
这适用于:
var element = document.getElementById('myElem'); if (typeof (element) != undefined && typeof (element) != null && typeof (element) != 'undefined') { console.log('element exists'); } else{ console.log('element NOT exists'); }
还有一个更好的解决scheme。 你甚至不需要检查元素是否返回null
。 你可以简单地做到这一点:
if (document.getElementById('elementId')) { console.log('exists') }
如果该元素实际存在于DOM中,那么该代码将仅存exists
控制台。