Pengaksesan Obyek Pada Halaman Web - Catatan Faiq Hisyam Marwan

Contact Form

 

Pengaksesan Obyek Pada Halaman Web



Pengaksesan Obyek Pada Halaman Web
Setiap elemen HTML yang ada dalam suatu dokumen web oleh Javascript diterjemahkan sebagai obyek HTML. Pada obyek HTML ini terdapat sejumlah fungsi, konstanta ataupun variabel yang dapat diakses untuk mengubah elemen HTML tersebut. Akses terhadap obyek HTML tersebut dapat dilakukan dengan menggunakan fungsi-fungsi berikut.

Tabel 2. Fungsi untuk mengakses obyek HTML
Fungsi
Penjelasan
getElementById(“id-elemen”)
id-elemen disini digunakan untuk menunjuk nilai dari atribut id dari elemen yang mau diakses obyeknya.
getElementsByTagName(“nama-tag”)
nama-tag disini digunakan untuk mengambil obyek berdasarkan nama tag HTML-nya
getElementsByName(“nama”)
nama disini adalah nilai dari atribut name dari elemen yang akan diakses. Umumnya diterapkan pada komponen dari form, seperti input, select, checkbox, dan komponen lainnya.

Ketiga fungsi diatas merupakan bagian dari obyek document. Sehingga obyek document perlu disertakan pada saat memanggil fungsi diatas.
Contoh : penggunaan fungsi getElementById()

<input type="text" id="nilai" />
<input type="button" id="btnAmbilNilai" value="Ambil nilai"
onclick="ambilNilai();" />
<script>
function ambilNilai(){
    var objNilai = document.getElementById('nilai');
    var n = objNilai.value;
    alert("nilainya adalah " + n);
}
</script>

Pada contoh diatas ini apabila tombol Ambil nilai diklik, maka obyek input nilai akan diambil menggunakan fungsi document.getElementById() dan selanjutnya, variabel value dari obyek nilai digunakan untuk mengambil data masukkan dari user agar dapat ditampilkan.




Contoh : penggunaan fungsi getElementsByName().
<input type="text" name="nilai" />
<input type="button" id="btnAmbilNilai" value="Ambil nilai"
onclick="ambilNilai();" />
<script>
function ambilNilai(){
    var objNilai = document.getElementsByName('nilai')[0];
    var n = objNilai.value;
    alert("nilainya adalah " + n);
}
</script>

Fungsi getElementsByName() sedikit berbeda dengan metode getElementById(), dimana hasil dari metode ini adalah array obyek bukan obyek tunggal. Dengan hasil berupa array ini berarti untuk mengakses elemen pertama digunakan index 0. Disisi lain, dengan hasil array ini dimungkinkan untuk menuliskan elemen HTML dengan nilai atribut name yang sama. Berikut ini merupakan contoh penggunaan fungsi getElementsByName() dengan elemen yang memiliki nama sama lebih dari satu.

<input type="text" name="nilai" />
<input type="text" name="nilai" />
<input type="button" id="btnAmbilNilai" value="Ambil nilai"  
onclick="ambilNilai();" />
<script>
function ambilNilai(){
var obj1 = document.getElementsByName('nilai')[0];
var obj2 = document.getElementsByName('nilai')[1];
var n1 = obj1.value;
var n2 = obj2.value;
alert("nilai pertama adalah " + n1);
    alert("nilai kedua adalah " + n2);
}
</script>


Selanjutnya untuk fungsi getElementsByTagName(), berikut ini diberikan contoh skripnya.

<input type="text" name="nilai" />
<input type="button" id="btnAmbilNilai" value="Ambil nilai"
onclick="ambilNilai();" />
<input type="text" name="hasil" />
<script>
function ambilNilai(){
    // mengambil obyek input text pertama
    var obj1 = document.getElementsByTagName('input')[0];
   
    // mengambil obyek input button
    var obj2 = document.getElementsByTagName('input')[1];
   
    // mengambil obyek input text kedua
    var obj3 = document.getElementsByTagName('input')[2];
   
    // mengambil nilai input text pertama dan button
    var s1 = obj1.value;
    var s2 = obj2.value;
   
    // menampilkan nilai pada input text kedua
    obj3.value = s1 + s2;
}
</script>


Hasil akhir dari skrip ini mirip dengan contoh sebelumnya, hanya cara mengambil nilainya yang berbeda. Oleh karena tombol juga dibuat menggunakan tag <input> maka nilainya dapat diakses menggunakan fungsi ini. Berikutnya untuk obyek input text yang kedua digunakan untuk menampilkan isi dari input text pertama dan input button.

Total comment

Author

Faiq Hisyam Marwan

0   comments

Cancel Reply