readonly与disabled的区别

一. 范围不同

readonly 只对 <input> 和 <textarea> 标签有效

disabled 对所有表单元素都有效, 包括:<input>, <textarea>, <button>, <label>, <option>, <select>等

二. 程度不同

readonly 只是将元素设置为只读,不可输入,对其它操作没有影响

disabled 阻止元素的一切操作。包括 获取焦点,点击事件等

三. 表单提交

readonly 只是将元素设置为只读,不影响表单提交

disabled 设置了该属性的表单元素,值将不会随着表单一起提交

四. JavaScript操作

设置了readonly和disabled的表单元素,用户无法再界面上改变它的值。但通过JavaScript是可以改变其值的,同样背景色,字体颜色等也可以通过JavaScript来改变。

例如:下面的代码运行在chrome浏览器中时,点击“点我”后两个input框的字体颜色、背景色,值都会发生变化。

$('input').attr("readonly","readonly") //将input元素设置为readonly  
$('input').removeAttr("readonly"); //去除input元素的readonly属性  
 或
$('input').attr("readonly",true)
$('input').attr("readonly",false)
$('input').val ('1')   // 设置input的值
注: 使用表单post或get传递时会被传递出去
$('input').attr("disabled","disabled") //将input元素设置为readonly  
$('input').removeAttr("disabled"); //去除input元素的readonly属性  
 或
$('input').attr("disabled",true)
$('input').attr("disabled",false)
$('input').val ('0')   // 设置input的值

注: 使用表单post或get传递时不会被传递出去

 

posted @ 2019-01-23 11:08  echo丶若梦  阅读(898)  评论(12编辑  收藏  举报