Apakah mungkin, menggunakan jQuery, untuk mengetahui jenis elemen dengan jQuery? Misalnya, apakah elemen div, span, pilih, atau input?
Misalnya, jika saya mencoba memuat nilai ke daftar drop-down dengan jQuery, tetapi skrip yang sama dapat menghasilkan kode ke set tombol radio, dapatkah saya membuat sesuatu seperti:
$('.trigger').live('click', function () {
var elementType = $(this).prev().attr(WHAT IS IT);
});
Diberikan daftar drop-down dengan tombol di sebelahnya dengan kelas pemicu , elementType
variabel saya harus kembali select
setelah tombol ditekan.
Jawaban:
Mendapatkan elemen ketik dengan cara jQuery:
melakukan hal yang sama tanpa jQuery
Memeriksa jenis elemen tertentu:
sumber
nodeName
tidak mendukung lebih banyak jenis elemen, dan mendukung IE 5.5 seharusnya tidak menjadi masalah lagi, jadi saya tidak melihat masalah dengan mengubahtagName
kenodeName
dalam jawaban di atas. Keduanya akan bekerja dengan baik untuk elemen, dan yang terakhir akan bekerja pada textnodes, atribut dll.$(this).is("input");
Anda juga dapat menggunakan:
sumber
Anda harus menggunakan
tagName
properti danattr('type')
untuk inputsumber
Seperti yang disinggung oleh Distdev, Anda masih perlu membedakan jenis input. Artinya,
akan memberi tahu Anda
input
, tetapi itu tidak membedakan antara kotak centang / teks / radio. Jika ini merupakan input, Anda dapat menggunakannyauntuk memberi tahu Anda kotak centang / teks / radio, sehingga Anda tahu jenis kontrolnya.
sumber
Anda bisa menggunakan
.is()
:lihat sumber
sumber
gunakan get (0) .tagName. Lihat tautan ini
sumber
Gunakan Nodename over tagName:
lihat DOM Core
sumber