dom.getAttribute('value') 和 dom.value 的区别

dom  是一个 input type="text"

使用: dom.setAttribute("value","2011"),只能通过 dom.getAttribute("value") 得到 2011
使用:  dom.value = 2012,只能通过 dom.value 得到 2012

也就是说: getAttribute 和 setAttribute 是一套, 直接使用属性是一套,两套完成不是一回事。 

总结:

1. 如果是自定义属性,那统一使用 getAttribute  , setAttribute ,保持浏览器兼容性。

2. 如果是DOM 的属性,直接使用  可以获取最新值。

3. jQuery 底层的方法 $.fn.val() 使用的是  dom.value 属性。
 
===========
另外,对于 input 标签 如
<input type="text" value="aa">
.getAttribute("value") 和 .value 都可以得到 aa
但是对于 
<div value="aa"></div>
.getAttribute("value") 得到 aa
而 .value 得到 undefined
posted @ 2015-04-27 11:03  Bestend  阅读(597)  评论(0编辑  收藏  举报