javascript - 在 javascript 中,input.value=val 与 input.setAttribute ('value' 的区别,val)?

标签 javascript dom attributes properties

在 javascript 中,通过赋值设置 HTMLElement 属性与使用 setAttribute() 之间的区别是什么。以下是来自 chrome session ,让我相信不同之处:

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

具体有什么区别?是那种让你感到厌烦的东西吗?


马上回答。

chrome 显示属性,所以这导致了我的困惑。

最佳答案

In javascript, is what is the difference between setting an HTMLElement property with assignment as versus using setAttribute()

这取决于属性。

value 属性反射(reflect)当前值,value 属性反射(reflect)默认值。

一些属性直接映射到属性。

关于javascript - 在 javascript 中,input.value=val 与 input.setAttribute ('value' 的区别,val)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6799780/

相关文章:

python - 使用 getattr [ python ] 在实例上调用方法

javascript - 将全局参数传递给 statechaned 函数

javascript - URL href 失败 : Anchors, URL 和 Javascript

javascript - Typeahead 和 Bloodhound 动态改变局部值

javascript - 为新创建的 DOM 对象获取准确的尺寸

jQuery对象禁用事件监听器,如何检测html属性何时发生变化

javascript - 打印 CSS 类的属性列表

javascript - 在 HTML/JavaScript 中,有没有办法在图像开始加载时知道图像的最终布局尺寸?

javascript - "readyState === ' Interactive' "and "Jquery.ready() 之间的差异

objective-c - 为什么 clang 没有 'nonnil' 属性?