Встановлення атрибута HTML <label> 'for' у JavaScript


85

Як встановити forатрибут <label>елемента HTML у JavaScript, не використовуючи jQuery або будь-яку іншу бібліотеку?

Відповіді:


134

Використовуйте htmlForатрибут. Я припускаю, що він має трохи загадкову назву, оскільки forце ключове слово в JavaScript:

var label = document.createElement('label');
label.htmlFor = 'some-input-id';

Чи не було б краще просто використовувати setAttribute?
Дмитро Фарков

1
@DmitriFarkov, я не думаю. Чому це було б краще?
Дрю Ноукс,

Я б сказав для послідовності. Особисте ігнорування подібного синтаксичного цукру, оскільки це означає, що ви встановлюєте фактичну властивість об’єкта, а не атрибут об’єкта елемента DOM. Хоча відповідає на моє запитання, краще лише суб’єктивно.
Дмитро Фарков

16
DOM концептуально працює з об'єктами та властивостями. htmlForє правильним шляхом встановлення властивості елемента DOM. Не потрібно возитися з атрибутами, що саме і setAttributeробить.
Fabrício Matté

Має сенс! Гарний дзвінок.
Дмитро Фарков
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.