javascript脚本设置输入框只读的问题

今天在开发中准备通过javascript设置input框只读属性的时候,用document.getElementById('input').readonly='readonly';结果发现这样设置无效.

于是试着disable的属性,用同样的方法设置是有效的.document.getElementById('input').disabled=disabled; 于是感觉很奇怪.因为在dreamweaver中输入框这两个属性都是这样设置的.而且readonly只要存在于input框就有效,后来忽然发现,当然输入readonly时用代码提示自动完成后的结果是 readonly="readonly" ,而disabled却是disabled="disabled".

接着就想会不会是这个问题,后来就用复选框一样的方法设置只读属性就可以了.如:

document.getElementById('input').readOnly= true; (注意中间那个O是大写的,不然就无效了)
 
input只读属性
有两种方式可以实现input的只读效果:disabled 和 readonly。
自然两种出来的效果都是只能读取不能编辑,可是两者有很大不同。
Disabled说明该input无效,及其value不会传递给任何程序,比如asp、php等。
Readonly仅仅是无法编辑,不影响其值的传递。
Disabled使用:<INPUT type=”text” name=”username” value=”james”disabled>
Readonly使用:<INPUT type=”text” name=”partNumber” value=”1500″ readonly>
 
 
 
<input id="RaOne" type="radio" value="1" name="exce" >
<input type=button value="Disabled" onclick="RaOneonClick()">
<script>
function RaOneonClick(){
 if(RaOne.disabled)
  RaOne.disabled=false;
 else
  RaOne.disabled=true;
}
</script>
原文地址:https://www.cnblogs.com/xiwang6428/p/3686146.html