iViOLeTi 2013-01-29
在JavaEEWeb项目开发当中,我们经常会遇到需要禁止文本框输入的情况,或者是为了不允许用户修改,也或者是为了提供一个更佳的用户体验,因此如何在JSP页面中用JavaScript禁用文本框或者禁止文本框的输入则显得很实用。本文提供以下几种方法仅供参考:
方法1、设置文本框的ReadOnly选项
<inputtype="text"value="此处文本不可修改"readonly/>
在JavaScript中,可以使用以下代码启用或禁用问框框的输入功能:
document.all.textInputID.readOnly=false;
采用这种方法的好处是在基于SSH(Struts+Spring+HIbernate)框架的设计中,我们能够通过Form调用到该文本框。当然,其它方法也调用不到,本文结尾处将略作介绍。
方法2、设置文本框的Disable属性
<inputtype="text"value="该文本框不可用"disabled/>
相应的JavaScript代码如下:
document.all.textInputID.disabled=true;
方法3、在对象focus时立刻让它blur,使它无法获得焦点
<inputtype="text"value="onfocus=this.blur()"onfocus="this.blur()"/>
提示:readonly和disabled的区别在于后者完全禁止与该对象的交互(表现为不可改写、不可提交等),而readonly是可以提交的
关于如何让对象得不到焦点,主要的事件或方法有:
onfocus当对象获得焦点时触发。
focus使对象得到焦点。
onblur在对象失去输入焦点时触发。
blur模糊对象的内容以便使其看起来失去焦点。