- 注册时间
- 2013-1-23
- 最后登录
- 2020-11-10
- 阅读权限
- 10
- 积分
- 155
- 精华
- 0
- 帖子
- 1
|
你好:
目前,在表单的输入验证方面,已经实现了若干多种验证方式,但根据我的经验来看,目前验证方式还存在不少的不足处,导致在使用验证时,经常需要书写各类自定义验证脚本.
主要问题在于没有提供组合的验证方式.
比如:当验证一个URL时,可直接使用vtype="url"形式进行验证.
但为了避免输入的URL过长(比如数据库字段仅50字节),那么我还需要验证输入的文本长度不能超过50个字节,在这种情况下,所提供的验证就无能为力了.
再比如,目前提供了数字范围验证,可如果我要求输入的数字,不能有小数只能为整数,显然该验证又无法实现了.
如何改进呢?很简单,只需要提供"组合"式验证即可.
针对上述2种要求,如果可以如下实现(多个验证写在一起,中间以分号分隔):
vtype="url;maxlength:50;" //验证必须是URL格式且长度不能超过50字节
vtype="range:0,100;int;" //必须输入整数且数字范围在0-100之间.
如上,对于验证代码的改造,相对简单且调整的代码量最小.
同时,由于每个验证所涉及的范围变得非常小,因此可以扩大更多的预定义的验证方法,而每个基本验证方法只需要关心本验证所涉及的各类参数即可,不需要关心是否非空,是否长度验证什么的,也符合基本方法功能最小的开发原则.
比如:可以提供如:必须以何开头、结尾、包含、不包含,不得以何开头、结尾,必须英文、中文、不得英文、中文,不得包含HTML代码,文本比较,不同控件值比较等诸多验证方式。
|
|