jQuery技术

jQuery UI全教程之一(dialog的使用教程)(3)

字号+ 作者:H5之家 来源:H5之家 2015-09-20 17:50 我要评论( )

在上边的验证中使用到了checkLength()方法和checkReg方法,这两个方法分别都是自定义方法,分别是验证字段长度和通过正则表达式验证输入是否合法的方法,在jQueryUI官方提供的Demo里也有相应的方法,我在这里对方法

在上边的验证中使用到了checkLength()方法和checkReg方法,这两个方法分别都是自定义方法,分别是验证字段长度和通过正则表达式验证输入是否合法的方法,在jQueryUI官方提供的Demo里也有相应的方法,我在这里对方法做修改,因为官方的DEMO中当验证失败后,重新打开DIALOG时,验证失败的提示信息和错误样式都还保存着。而我写的方法已经做了修改。不会有这样的问题,下面是checkLength和checkReg方法,方法的注释我写的很清楚了,不再解释,我会说下关于添加错误CSS样式的东西。

//判断字段长度是否符合要求的方法,四个参数分别为:o被检测的对象,msg被检测对象显示名称

//min允许的最小长度,max允许的最大长度

function checkLength(o,msg,min,max){

if(o.val().length > max || o.val().length < min){

o.addClass("ui-state-error");//为当前的错误域添加CSS样式

updateTip(msg+"的长度必须在"+min+"到"+max+"之间");//更新提示区域的信息

return false;

}else{

//如果验证通过则移除当前对象的CSS错误样式

o.removeClass("ui-state-error");

return true;

}

}

 

//通过正则表达式验证内容的方法,o为表单域对象,reg为正则表达式,n为错误提示信息

function checkReg(o,reg,n){

if(!reg.test(o.val())){

o.addClass("ui-state-error");

updateTip(n);

return false;

}else{

o.removeClass("ui-state-error");

return true;

}

}

在这两个方法中都用到了一个updateTip方法,该方法的作用就是给那个<p>标签也就是错误消息显示的地方添加一个css样式,用来高亮提示用户的。方法如下:

//更新提示信息的方法,传递的参数t为显示的错误信息,然后为显示信息的标签添加高亮

function updateTip(t){

tips.text(t).addClass("ui-state-highlight");

}

验证的过程就是如上面显示的那样,方法都有比较详细的注释,大家可以自己看

当用户输入的都被我们验证,并通过后,应该像后台发起ajax请求了。具体代码如下:

此处用到了一个formSerialize()方法,是一个jquery.form.js的脚本文件,针对表单的一个jq插件,可以序列化表单,这样我们只需要把序列化后的值传递给后台就行,不用一个个获取再拼接了。如果需要用到请自行引入该脚本

if(chk){

//验证通过后移除提示处的样式和错误消息

tips.removeClass().text("");

//序列化表单

var user = $("#reg-form").formSerialize();

//发起ajax请求

$.ajax({

type:'post',

url: '${path}/UserAction?method=register',

data:user,

success:function(msg){

if(msg == "success"){

$("#register-form").dialog("close");

}else{

alert("服务器异常,请稍后再试");

}

},

error:function(){

alert("ajax请求失败");

}

});

}

整个的注册流程就是这样,当注册完成后会关闭dialog,下面的图片显示当验证出现错误时的样式


jQuery UI全教程之一(dialog的使用教程)

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • 7个有用的jQuery小技巧

    7个有用的jQuery小技巧

    2016-02-26 13:02

  • jQuery制作select双向选择列表

    jQuery制作select双向选择列表

    2016-02-26 11:00

  • 全面详细的jQuery常见开发技巧手册

    全面详细的jQuery常见开发技巧手册

    2016-02-26 10:02

  • 强大的jQuery移动插件Top 10

    强大的jQuery移动插件Top 10

    2016-02-25 09:05

网友点评
a