教你自己写一久赢国际APP个js表单验证框架

2019-04-03 08:37栏目:计算机
TAG:

  其实我自己也就能简单用用js而已,但是呢,相对很多初学者来说多懂了点,所以斗胆孟浪一下,将一些所得记录下来,以供更多的初学者能够知道一个东西的实现过程,省去在源码里摸索的过程。

  在表单程序中,在页面上需要很多的Js代码来验证表单,每一个field是否必须填写,是否只能是数字,是否需要ajax到远程验证,blablabla。如果一个一个单独写势必非常的繁琐,所以我们的第一个目标就是构建一个类似DSL的东西,用表述的语句而非控制语句来实现验证。

  其次一个个单独写的话还有一个问题就是必须全部验证通过才能提交,但是单独验证会因为这个特征而增加很多额外的控制代码,且经常会验证不全面。所以第二个目标就是能够全面的整合整个验证的过程。最后不能是一个无法扩展的一切写死的实现,必要的扩展性还是要的。

  关于验证器对象我们在后面来讨论,接下来我们扩展这个类,加入validate方法

  2 var self=this; //换一个名字来存储this,不然函数的闭包中会覆盖这个名字

  接下来我们就来看看验证器,验证器是真正执行验证过程的类,根据一般的验证过程,我们可以将其分类成,长度验证(包括必填验证),正则表达式验证,自定义函数验证,Ajax远程验证这几种,所以我们定义这几种验证器类,Ajax远程验证为了方便引用了jQuery,其他部分也有用到: