Saturday, February 16, 2013

Mendapatkan Elemen Berdasar Nama Tag

Kemampuan DOM yang tidak kalah penting adalah bisa mendapatkan koleksi dari elemen berdasar nama tagnya, selain berdasar ID-nya, atau namanya.

Untuk mendapatkan koleksi elemen berdasar nama tagnya, gunakan getElementsByTagName() DOM Document. Metode getElementsByTagName() mempunyai single argumen, di mana argumen itu berisi nama tag dari elemen yang ingin didapatkan.

Sebagai contoh, untuk mendapatkan koleksi dari semua tag <div> di dalam halaman, gunakan bentuk berikut:

document.getElementsByTagName("div");

Sama seperti getElementsByName(), getElementsByTagName() akan mengembalikannya sebagai NodeList collection. Jika tidak ada node ditemukan berdasar nama tag yang ditetapkan, NodeList collection berisi zero-element.

Anda juga dapat menggunakan getElementsByTagName() DOM Element untuk mendapatkan node yang berada di dalam node lainnya - subnode.

Sebagai contoh, umpamakan saya telah mempunyai acuan kepada <tabel> node. Setelah saya mempunyai acuan itu, saya baru bisa mendapatkan koleksi semua cell di dalam tabel itu:

var cellCollection=tableObj.getElementsByTagName("td");

Untuk browser moderen dan termasuk IE6+, anda dapat gunakan simbol * untuk mendapatkan koleksi elemen pada bagian tertentu di dalam dokumen.

Sebagai contoh, umpamakan ingin mendapatkan semua elemen di dalam elemen TABLE:

var elementCollection=tableObj.getElementsByTagName("*");

Sebagai contoh:

<table id='x'> <tr> <th></th> <th></th> </tr> <tr> <td></td> <td></td> </tr> </table> <script> var tableObj = document.getElementById("x"); var elementCollection = tableObj.getElementsByTagName("*"); for(var i = 0; i < elementCollection.length; i++){ document.write(elementCollection[i].tagName+"<br>"); } </script>