в JavaScript различие input.value = val по сравнению с input.setAttribute ('value', val)? - PullRequest
3 голосов
/ 23 июля 2011

В javascript есть какая разница между установкой свойства HTMLElement с присваиванием и использованием setAttribute().Ниже приведен пример из хромированной сессии, заставляющий меня поверить, что есть разница:

> i = document.createElement('input');
<input>
> i.value = 'abc';
"abc"
> i
<input>​
> i.setAttribute('value','abc');
undefined
> i
<input value=​"abc">

В чем именно разница?Это что-то типа того, что бьет тебя в задницу?

ответ прямо.

Хром отображает атрибуты, так что это привело меня в замешательство.

1 Ответ

7 голосов
/ 23 июля 2011

В javascript есть какая разница между установкой свойства HTMLElement с присваиванием и использованием setAttribute ()

Это зависит от свойства.

Значениесвойство отражает значение current , атрибут value отражает значение default .

Некоторые свойства отображаются непосредственно на атрибуты.

...