Bagaimana saya bisa mendapatkan nama elemen dengan jQuery?

130

Bagaimana saya bisa mendapatkan properti nama elemen HTML dengan jQuery?

Poonam Bhatt
sumber
html atau bahkan sedikit lebih banyak informasi tentang elemen yang Anda inginkan namanya akan membantu kami memberikan jawaban yang lebih spesifik.
Patricia
4
Gunakan .prop()untuk mendapatkan properti, dan .attr()untuk mendapatkan atribut. Jangan gunakan .attr()untuk mendapatkan properti seperti yang disarankan semua orang. Kami bekerja dengan JavaScript di sini, bukan markup HTML.
11
Ini harus dibuka kembali. Penanya harus diberi imbalan karena langsung ke pokok permasalahan dan tidak memulai dengan sesuatu seperti "Saya punya situs web ini di mana ..."
cantera
@ cantera25: terima kasih sudah menunjukkan ini ..
Poonam Bhatt

Jawaban:

221

Anda harus menggunakan attr('name')seperti ini

 $('#yourid').attr('name')

Anda harus menggunakan pemilih id, jika Anda menggunakan pemilih kelas Anda mengalami masalah karena koleksi dikembalikan

Nicola Peluchetti
sumber
8
Saya baru saja mendapatkan nilai yang tidak terdefinisi ketika saya menggunakan ini atau .prop ()
HorusKol
1
Apakah ada alasan untuk lebih menyukai attr ('name') daripada prop ('name')?
dallin
Saya menggunakan $(this).attr('name');pemilih kelas $('.jobSelect').change(function() {dan saya tidak menemui masalah.
Ömer An
14

Untuk membaca properti objek yang Anda gunakan .propertyNameatau ["propertyName"]notasi.

Ini tidak berbeda untuk elemen.

var name = $('#item')[0].name;
var name = $('#item')[0]["name"];

Jika Anda secara khusus ingin menggunakan jQuerymetode, maka Anda akan menggunakan .prop()metode tersebut.

var name = $('#item').prop('name');

Harap perhatikan bahwa atribut dan properti tidak harus sama.

pengguna1106925
sumber
Saya pikir prop()ini untuk properti boolean seperti checkedtidak untuk atribut
Nicola Peluchetti
2
@NicolaPeluchetti: .prop()untuk properti apa pun di elemen DOM. .attr()adalah metode yang sangat membingungkan yang telah mengubah perilakunya di antara rilis yang berbeda, terkadang memberi Anda properti, kali lain atributnya. Either way, ada perbedaan antara atribut dan properti yang harus diamati dengan menggunakan metode yang tepat.
3
@NicolaPeluchetti: Ini adalah contoh yang menggambarkan perbedaan antara properti dan atribut.
10
$('someSelectorForTheElement').attr('name');
Patricia
sumber
Anda harus menggunakan pemilih id, jika Anda menggunakan pemilih kelas Anda mengalami masalah karena koleksi dikembalikan
Nicola Peluchetti
2
id akan menjadi yang paling spesifik ya, tetapi tanpa html mereka dan kurangnya detail dalam pertanyaan, sulit untuk mengatakan pemilih apa yang harus mereka gunakan.
Patricia
5

Bermain-main dengan contoh jsFiddle ini :

HTML:

<p id="foo" name="bar">Hello, world!</p>

jQuery:

$(function() {
    var name = $('#foo').attr('name');

    alert(name);
    console.log(name);
});

Ini menggunakan .attr () metode jQuery untuk mendapatkan nilai untuk elemen pertama dalam set yang cocok.

Meskipun tidak secara khusus jQuery, hasilnya ditampilkan sebagai prompt peringatan dan ditulis ke browser konsol .

rjb
sumber
3
var name = $('#myElement').attr('name');
Dennis Traub
sumber
0

Metode .attr () memungkinkan mendapatkan nilai atribut elemen pertama dalam objek jQuery:

$('#myelement').attr('name');
Didier Ghys
sumber