写法
<input type="text" readonly>
<input type="text" disabled>
共同点
- 都会使文本框变成只读,不可编辑
不同点
disabled
属性在将input
文本框变成只读不可编辑的同时,还会使文本框变灰,但是readonly
不会。
disabled
属性修饰后的文本框内容,在不可编辑的同时,通过js也是获取不到的。但是用readonly
修饰后的文本框内容,是可以通过js获取到的,也就只是简单的不可编辑而已!
disabled
属性对input
文本框,单选radio
,多选checkbox
都适用,但是readonly
就不适用,用它修饰后的单选以及多选按钮仍然是可以编辑状态的。
disabled
属性是可以应用于所有的表单元素上面, 而readonly
则是只能应用在input(text / password)
和textarea
- 表单设置
disabled
属性之后,表单的数据不能进行传输,如果传输的话则会为null
,而readonly
则不影响
总结
disabled
样式会改变,对于所有的表单元素都有效,输入项不能获取焦点,用户的所有操作(鼠标点击、键盘输入等)对该输入项都无效,并且数据不能进行传输
readonly
只是使文本框不能输入,外观没有变化,只针对input(text / password)
和textarea
之类可以输入文本的输入项有效,用户不能编辑,但鼠标仍然可以聚焦,并且数据可以进行传输