属性值VS属性值
问题描述:
我有一个加载了默认值的<input>
元素。稍后,我通过jQuery的input.val("different value")
更改该值。属性值VS属性值
当我CONSOLE.LOG()的元素,我看到这样的萤火:
Object[input.cs_required.form-control.input-sm property value = "12/29/2014" attribute value = "12/02/2014"]
- 为什么有分配给输入两个不同的值?
- 什么是 属性值和属性值之间的区别?
- 应该 我担心吗?差的
答
简单的例子:
jQuery('#something').val()
改变* .Value属性。 jQuery('#something').attr('value','neValue')
更改该组件上的属性。
这两者之间有一个重要的区别。看看这个更多的信息。
What's the difference between jQuery .val() and .attr('value')?
你担心的唯一的事情是你是否正在使用/分配/利用正确的项目 - property or attribute
。
答
如您所说,您通过value
HTML属性提供默认值。这将是DOM元素的初始值value
属性。更改properry不会影响该属性。
HTML属性的值通常用作相应DOM属性的初始值。
不确定它们为什么不同,但属性由HTML定义,属性由DOM定义。 – 2014-12-02 22:01:21
我觉得有一个很好的解释[这里](http://stackoverflow.com/questions/258469/what-is-the-difference-between-attribute-and-property) – 2014-12-02 22:01:42
属性,一般来说,是一个setter (方法)和getter(方法),它被'用作'字段/成员',或在右侧或左侧值分配;像任何其他方法一样,它会在被调用的相应方法中运行过程代码,具体取决于您是设置还是从中获取。属性是类型描述符。主要用于注释。 – 2014-12-02 22:14:22