Ustawianie atrybutu HTML <label> „for” w JavaScript


85

Jak ustawić foratrybut <label>elementu HTML w JavaScript, bez używania jQuery lub jakiejkolwiek innej biblioteki?

Odpowiedzi:


134

Użyj htmlForatrybutu. Zakładam, że ma nieco tajemniczą nazwę, ponieważ forjest to słowo kluczowe w JavaScript:

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

Czy nie byłoby lepiej po prostu użyć setAttribute?
Dmitri Farkov

1
@DmitriFarkov, nie sądzę. Dlaczego miałoby być lepiej?
Drew Noakes

Powiedziałbym dla zachowania spójności. Osobiste lekceważenie cukru składniowego, takiego jak ten, ponieważ sugeruje, że ustawiasz rzeczywistą właściwość obiektu, a nie atrybut obiektu elementu DOM. Odpowiada jednak na moje pytanie, lepiej tylko subiektywnie.
Dmitri Farkov

16
DOM koncepcyjnie działa z obiektami i właściwościami. htmlForto właściwy sposób poprzez ustawienie właściwości elementu DOM. Nie ma potrzeby majstrowania przy atrybutach, co tak właśnie setAttributejest.
Fabrício Matté

Ma sens! Dobra decyzja.
Dmitri Farkov
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.