今天在开发中准备通过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> |