Jak mogę uzyskać ID elementu używając jQuery?
<div id="test"></div>
<script>
$(document).ready(function() {
alert($('#test').id);
});
</script>
Dlaczego powyższe nie działa i jak mam to zrobić?
1315
3
Sposób jQuery:
W twoim przykładzie:
Lub poprzez DOM:
lub nawet :
a powodem użycia
$('#test').get(0)
w JQuery lub nawet$('#test')[0]
jest to, że$('#test')
jest selektorem JQuery i zwraca tablicę() wyników, a nie pojedynczy element przez swoją domyślną funkcjonalnośćalternatywą dla selektora DOM w jquery jest
który różni się od
.attr()
i$('#test').prop('foo')
łapie określoną właściwość DOMfoo
, podczas gdy$('#test').attr('foo')
łapie określony atrybut HTMLfoo
i możesz znaleźć więcej szczegółów na temat różnic tutaj.$('selector').attr('id')
zwróci id pierwszego dopasowanego elementu. Odnośnik.Jeśli twój dopasowany zestaw zawiera więcej niż jeden element, możesz użyć konwencjonalnego
.each
iterator, aby zwrócić tablicę zawierającą każdy z id:Lub, jeśli chcesz się trochę bardziej postarać, możesz uniknąć wrappera i użyć
.map
skrót.$('#test')
zwraca obiekt jQuery, więc nie można'użyć po prostuobject.id
, aby uzyskać jegoId
.musisz użyć
$('#test').attr('id')
, który zwraca wymaganeID
elementuMożna to również zrobić w następujący sposób ,
$('#test').get(0).id
, który jest równydocument.getElementById('test').id
.