从零开始学习jQuery (十一) 实战表单验证与自动完成提示插件


Posted in Javascript onFebruary 23, 2011

一.摘要

本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案,  即使你会使用jQuery也能在阅读中发现些许秘籍.

本文是介绍两个最常用的jQuery插件. 分别用于表单验证和自动完成提示(类似google suggest).

二.前言

研究别人的作品真是一件花时间而且痛苦的过程. 当然也和本人英文不好有关. 总觉得控件作者写了很多文档但是都不够系统, 需要深入研究很多的实例后才能了解作者的思路.所以学习和研究一个插件需要很高成本, 如果发现了Bug并修复需要的成本也是未知数(本次我花了较少的时间解决了自动完成提示插件的一个中文bug, 但是如果复杂的bug就不会这么简单了.).

对于简单应用我首先推荐上文中的jQuery UI. 但是jQuery UI解决的问题有限. 使用jQuery插件是我们最后的一个好办法---还算是好办法, 起码比自己开发要好吧?

很多jQuery的插件编码异常优美, 看一看艺龙首页现在的城市输入框控件, 除了需要为输入框手工添加很多很多属性(onkeyup, onkeydown等等), 而且还不够通用, 占用服务器资源和网络资源.但是当初也是花费了很久的时间完成的作品.

站在巨人的肩膀上, 让我感觉写脚本和写设计C#程序一样, 都有高度和深度可以挖掘. 除了使用作者开发好的功能, 还可以学习如何开发和封装javascript控件. 看过优秀的jQuery插件作者的代码和设计思想后, 常常自叹设计水平差距居然如此之大, 增加自认为脚本高手, 比较过后就是C#程序员和架构师之间的差距.

希望大家通过本章节介绍的两个插件, 除了学会如何使用,  还能够略微领悟到如何封装和设计javascript控件.

 

三.表单验证插件 validate

在提交表单前常要对用户输入进行校验.ASP.NET的验证控件就是用于此目的, 可以同时进行客户端和服务器端验证. 但是验证控件并没有被所有项目采用. 而且在MVC项目中经常使用自己的客户端验证框架.

在比较了若干表单验证插件后, 决定采用validate插件. 因为其使用简单并且灵活.

插件首页:

Javascript 相关文章推荐
基于JQUERY的两个ListBox子项互相调整的实现代码
May 07 Javascript
javascript中bind函数的作用实例介绍
Sep 28 Javascript
探寻Javascript执行效率问题
Nov 12 Javascript
javascript原型链继承用法实例分析
Jan 28 Javascript
简介JavaScript中Math.LOG10E属性的使用
Jun 14 Javascript
浅析JavaScript中浏览器的兼容问题
Apr 19 Javascript
使用ES6语法重构React代码详解
May 09 Javascript
解析Vue2 dist 目录下各个文件的区别
Nov 22 Javascript
基于webpack.config.js 参数详解
Mar 20 Javascript
深入探讨JavaScript的最基本部分之执行上下文
Feb 12 Javascript
webpack-url-loader 解决项目中图片打包路径问题
Feb 15 Javascript
vue.js 实现a标签href里添加参数
Nov 12 Javascript
从零开始学习jQuery (十) jQueryUI常用功能实战
Feb 23 #Javascript
从零开始学习jQuery (八) 插播:jQuery实施方案
Feb 23 #Javascript
从零开始学习jQuery (六) jquery中的AJAX使用
Feb 23 #Javascript
从零开始学习jQuery (四) jQuery中操作元素的属性与样式
Feb 23 #Javascript
从零开始学习jQuery (三) 管理jQuery包装集
Feb 23 #Javascript
jQuery的学习步骤
Feb 23 #Javascript
ASP.NET中基于JQUERY的高性能的TreeView补充
Feb 23 #Javascript
You might like
无线电广播的开始
2002/01/30 无线电
使用php+xslt在windows平台上
2006/10/09 PHP
两个强悍的php 图像处理类1
2009/06/15 PHP
Linux编译升级php的详细方法
2013/11/04 PHP
Smarty中调用FCKeditor的方法
2014/10/27 PHP
php制作简单模版引擎
2016/04/07 PHP
改进UCHOME的记录发布,增强可访问性用户体验
2011/01/17 Javascript
JQuery.ajax传递中文参数的解决方法 推荐
2011/03/28 Javascript
JS保留小数点(四舍五入、四舍六入)实现思路及实例
2013/04/25 Javascript
extJS中常用的4种Ajax异步提交方式
2014/03/07 Javascript
生成二维码方法汇总
2014/12/26 Javascript
JavaScript之Object类型介绍
2015/04/01 Javascript
angular学习之从零搭建一个angular4.0项目
2017/07/10 Javascript
NodeJS设计模式总结【单例模式,适配器模式,装饰模式,观察者模式】
2017/09/06 NodeJs
解决layui页面按钮点击无反应,也不报错的问题
2019/09/29 Javascript
Python实现设置windows桌面壁纸代码分享
2015/03/28 Python
python实现读取excel写入mysql的小工具详解
2017/11/20 Python
python3.x 将byte转成字符串的方法
2018/07/17 Python
python图片二值化提高识别率代码实例
2019/08/24 Python
python将图片转base64,实现前端显示
2020/01/09 Python
python global和nonlocal用法解析
2020/02/03 Python
如何解决flask修改静态资源后缓存文件不能及时更改问题
2020/08/02 Python
pycharm 2020.2.4 pip install Flask 报错 Error:Non-zero exit code的问题
2020/12/04 Python
深入浅出CSS3 background-clip,background-origin和border-image教程
2011/01/27 HTML / CSS
新西兰廉价汽车租赁:Snap Rentals
2018/09/14 全球购物
资深生产主管自我评价
2013/09/22 职场文书
应届生求职简历的自我评价怎么写
2013/10/23 职场文书
小学生自我评价范文
2014/01/25 职场文书
优秀老员工获奖感言
2014/02/15 职场文书
小学班主任寄语大全
2014/04/04 职场文书
法定代表人授权委托书范文
2014/08/02 职场文书
优秀教师推荐材料
2014/12/16 职场文书
安全保证书
2015/01/16 职场文书
2015年初一班主任工作总结
2015/05/13 职场文书
Ajax是什么?Ajax高级用法之Axios技术
2021/04/21 Javascript
比较几种Redis集群方案
2021/06/21 Redis