Memeriksa apakah div ada cukup sederhana
if(document.getif(document.getElementById('if')){
}
Tetapi bagaimana saya bisa memeriksa apakah div dengan id yang diberikan tidak ada?
Jawaban:
var myElem = document.getElementById('myElementId');
if (myElem === null) alert('does not exist!');
if (!document.getElementById("given-id")) {
//It does not exist
}
Pernyataan document.getElementById("given-id")
kembali null
jika sebuah elemen dengan given-id
tidak ada, dan null
salah artinya diterjemahkan menjadi salah ketika dievaluasi dalam pernyataan-if. ( nilai palsu lainnya )
null
mengevaluasi false
, yang bukan pengetahuan umum (C # adalah bahasa di mana null
tidak sama dengan salah).
null
tidak sama dengan false
bahkan dalam perbandingan kesetaraan koersif - panggilan untuk ToBoolean(null)
kembalifalse
Coba dapatkan elemen dengan ID dan periksa apakah nilai yang dikembalikan adalah null:
document.getElementById('some_nonexistent_id') === null
Jika Anda menggunakan jQuery, Anda dapat melakukan:
$('#some_nonexistent_id').length === 0
!document.getElementById('foo')
?
document.getElementById()
itu.
Periksa kode JavaScript dan JQuery saya:
JavaScript:
if (!document.getElementById('MyElementId')){
alert('Does not exist!');
}
JQuery:
if (!$("#MyElementId").length){
alert('Does not exist!');
}
Ada solusi yang lebih baik. Anda bahkan tidak perlu memeriksa apakah elemen tersebut kembali null
. Anda cukup melakukan ini:
if (document.getElementById('elementId')) {
console.log('exists')
}
Kode itu hanya akan masuk exists
ke konsol jika elemen tersebut benar-benar ada di DOM.
Semua jawaban ini TIDAK memperhitungkan bahwa Anda bertanya secara khusus tentang elemen DIV .
document.querySelector("div#the-div-id")
@see https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector