kapok

垃圾桶,嘿嘿,我藏的这么深你们还能找到啊,真牛!

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  455 随笔 :: 0 文章 :: 76 评论 :: 0 Trackbacks
http://rabbit8.blogchina.com/blog/article_144619.782661.html
记事贴2:Struts的Validator并不好用!
2005年 02月01日
使用正则表达式,使email字段中不能输入汉字。最近用AppFuse开发一个BS的系统,用的是Struts的MVC部分,使用Validator进行验证,结果发现Validator的验证EMail并不好,EMail中可以输入汉字,然后到服务器端验证,我配置了客户端验证,也可以验证Email的格式,但如果输入的是正确的格式,但是包含汉字它却验证不出来,但到了后台又管用了,不知道为什么,时间紧,我也没时间去研究它,找到一个方法可以解决这个问题,虽不完美,却也凑合:

使用正则表达式,将原代码
            <html:text property="email" styleId="email" size="50"/>
注释,换成

            <input type="text" name="email" value='<c:out value="${userForm.email}"/>' onkeyup="value=value.replace(/[\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\u4E00-\u9FA5]/g,''))"
 />
就解决了问题,用户如果输入汉字,则自动删除汉字,而且如果使用向左的箭头向前移动使光标前移,则根本移动不了,光标始终在行尾,只能删除后面的字符,再重新写,其实最好是在EMail的自动生成的脚本中提示,目前先这样实现吧,将来再说!
posted on 2005-03-09 00:16 笨笨 阅读(326) 评论(0)  编辑  收藏 所属分类: ALLAppFuse

只有注册用户登录后才能发表评论。


网站导航: