Проверить, существует ли div, довольно просто
if(document.getif(document.getElementById('if')){
}
Но как я могу проверить, не существует ли div с данным идентификатором?
Ответы:
var myElem = document.getElementById('myElementId');
if (myElem === null) alert('does not exist!');
if (!document.getElementById("given-id")) {
//It does not exist
}
Оператор document.getElementById("given-id")
возвращается, null
если элемент с given-id
не существует, и null
является ложным, что означает, что он переводится в false при оценке в операторе if. ( другие ложные значения )
null
оценивает false
, что не является общеизвестным (C # - это язык, где null
не равно false).
null
не составит false
даже коэрцитивное сравнение на равенстве - вызова ToBoolean(null)
возвращаетсяfalse
Попробуйте получить элемент с идентификатором и проверьте, равно ли возвращаемое значение null:
document.getElementById('some_nonexistent_id') === null
Если вы используете jQuery, вы можете:
$('#some_nonexistent_id').length === 0
!document.getElementById('foo')
?
document.getElementById()
.
Есть даже лучшее решение. Вам даже не нужно проверять, возвращается ли элемент null
. Вы можете просто сделать это:
if (document.getElementById('elementId')) {
console.log('exists')
}
Этот код будет записываться exists
на консоль только в том случае, если элемент действительно существует в DOM.
Все эти ответы НЕ учитывают, что вы спросили конкретно об элементе DIV .
document.querySelector("div#the-div-id")
@ см. https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector