论坛首页 Web前端技术论坛

js校验(勉强算是个jquery插件,支持ajax异步校验,按钮提交,自定义正则)

浏览 2882 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-05-20   最后修改:2010-05-20

JE上搜索js校验插件一搜一大把,大部分做的都不错,不过总是感觉用着达到自己想要的结果,于是乎,就自己搞了个,但是严格来说这并不算一个jquery插件(没有按照jquery插件定义的格式来写,因为原本是打算用元素js代码写的,后来考虑代码的维护性和简洁性采用了jquery)
由于本人技术有限,这个只是个demo,欢迎各位进一步完善(代码中注释很完善)
废话不多说,以下是这个插件的说明:

插件大小:6K(js)+1k(css)=7kb
1.无需书写js,只需要导入jquery.js和本js即可
2.常规校验采用 <input jType="" jSize='min,[max]' jErr=''/>的形式,

其中jType为定义好的校验类型,
有可选参数 english,china,email,id,number,type1
jSize为配置输入的最大和最少参数,若jSize不写则默认输入长度了1~max
jErr为自定义错误输出,不配置该属性则会启用默认输出
3.自定义正则校验
<input type="text" jUser="正则表达式" JErr="自定义错误输出" />

 4.ajax校验

<input type="text" jAjax="URL" name='name' jErr="自定义错误输出" />

后台返回字符串'true'或'false',true表示校验成功,false表示校验失败,其中URL不要带以本元素name命名的参数

<input type="text" jAjax="testAction.do" name='username' jErr="异步校验失败" />

 后台核心代码

String name =request.getParameter("username");
		if(name.equals("admin")){
	
				response.getWriter().write("true");
			
		}else{
			response.getWriter().write("false");
		}
		System.out.println("name="+name);

 5.通过submit按钮提交的时候,若有校验没通过,则表单无法提交

6.如果通过按钮提交表单,续加入属性 jForm="true"

然后再js中进行引入 var check =checkFormJs();

if(check==false){

//表单校验未通过

}else{

//校验通过,自己书写提交表单代码

}

7.更多例子请参加附件

论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics