首先我们来看一下我的这个html的结构,当然你们也可以根据你们自己的风格去布局
![](https://i-blog.csdnimg.cn/blog_migrate/550e2d2b7a38f73c43fb1d08c76a6d78.webp?x-image-process=image/format,png)
然后在简单的看一下css样式这里我没有做过多的修改,如果你觉得样式不好看当然也可以根据你自己风格来做一个简单的布局
![](https://i-blog.csdnimg.cn/blog_migrate/b6badf9b05152e4773ced58933db394e.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/0fd3c317b2cb611b452ad96a0070178a.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/097a29365fbb58fd0e3f26c9e28d443c.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/76b3bce7e85eeb7be8c824bb6a9767cb.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/3e5ccd3217fae1a6c4838d35b4b520c3.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/25972725e4b40503c3e277e097a204a4.webp?x-image-process=image/format,png)
相信上面的代码你们看的懂的吧!如果不理解可以联系我。
做到这里大家有没有发现里面的代码很臃肿的,其实我也是这么想的,看着没毛病其实有一部分是可以提出来公用这样就可以减少代码的额复写量,那么接下来我就讲这段代码整个一下
这是后面的代码!
![](https://i-blog.csdnimg.cn/blog_migrate/978d942cc984aef3d427f97323155665.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/63af48b96ebb30828403bcfabc8427bf.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/a96207c7bf7f5d917fb1506463b925a1.webp?x-image-process=image/format,png)
就是上面这段代码提出来单独封装了一个函数
![](https://i-blog.csdnimg.cn/blog_migrate/76f61ae54bed762e358f17830b1a5632.webp?x-image-process=image/format,png)
![](https://i-blog.csdnimg.cn/blog_migrate/747eff24ac072cf6fcc1c5c5ec2c6cfc.webp?x-image-process=image/format,png)
从上面可以看出有段代码我单独封装在一个函数里面了,这样减少了代码量,还有里面我只做了手机号的一个失去焦点效果,其他的就不一一列举出来的,想必你也会知道怎么做了,
还有ajax请求部分我就不一一讲解了,在这里主要是因为我一直苦于写表单验证比较繁琐没时间去封装,现在空闲下来写了这一个小小的表单插件。我觉得应该会满足大多数人的要求了,只是正则表达式不够全面,这个需要你自己去写了,小编我就不一一给你写了。