Як я можу отримати ім'я елемента за допомогою jQuery?


130

Як я можу отримати властивість імені елемента HTML за допомогою jQuery?


трохи html або навіть трохи більше інформації про елемент, для якого ви хочете назвати, допоможе нам дати більш конкретну відповідь.
Патрісія

4
Використовуйте .prop()для отримання властивостей та .attr()отримання атрибутів. Не використовуйте .attr()для отримання власності, як всі пропонують. Тут ми працюємо з JavaScript, а не розміткою HTML.

11
Це слід знову відкрити. Автор запитання повинен бути винагороджений за те, щоб
дійти

@ cantera25: спасибі за вказівку на це ..
Poonam Bhatt

Відповіді:


221

Ви повинні використовувати attr('name')так

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

ви повинні використовувати селектор ідентифікаторів, якщо ви використовуєте селектор класів, у вас виникають проблеми, оскільки колекція повертається


8
Я просто отримую невизначені значення, коли використовую цей або .prop ()
HorusKol

1
Чи є якась причина віддавати перевагу attr ('name') над prop ('name')?
Даллін

Я використовував $(this).attr('name');на виборі класу, $('.jobSelect').change(function() {і не зіткнувся з проблемами.
Ömer

14

Для читання властивості об'єкта ви використовуєте .propertyNameабо ["propertyName"]позначуєте.

Це не відрізняється за елементами.

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

Якщо ви конкретно хочете використовувати jQueryметоди, то ви використовуєте .prop()метод.

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

Зверніть увагу, що атрибути та властивості необов’язково однакові.


я думаю prop(), що для булевих властивостей, як checkedне для атрибутів
Nicola Peluchetti

2
@NicolaPeluchetti: .prop()призначене для будь-якого властивості елемента DOM. .attr()це дуже заплутаний метод, який змінив свою поведінку між різними випусками, іноді надаючи вам властивість, в інший раз атрибут. Так чи інакше, існує різниця між атрибутами та властивостями, яких слід дотримуватися, використовуючи відповідний метод.

3
@NicolaPeluchetti: Ось приклад, який ілюструє відмінність між властивостями та атрибутами.

10
$('someSelectorForTheElement').attr('name');

вам слід скористатися селектором ідентифікаторів, якщо ви користуєтесь селектором класів, у вас виникли проблеми, оскільки колекція повернута
Нікола Пелучетті

2
id був би найбільш конкретним так, але, маючи їх html та повну відсутність деталізації у питанні, важко сказати, яким селектором вони повинні користуватися.
Патрісія

5

Пограйте з цим прикладом jsFiddle :

HTML:

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

jQuery:

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

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

Для цього використовується метод jQuery .attr (), щоб отримати значення для першого елемента в зібраному наборі.

Хоча спеціально jQuery не відображається, результат відображається у вигляді підказки та записується на консоль браузера .



0

Метод .attr () дозволяє отримати значення атрибута першого елемента в об'єкті jQuery:

$('#myelement').attr('name');
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.