在做用户注册的时候,我对每一个表单做了blur()的处理,即失焦的时候就判断这个表单的内容输入是否正确,是否可用。
然后就是到了点击“立即注册”按钮的时候,点击之后首先判断之前的表单是否有输入为空的,否则不予注册请求。如果不为空,再判断输入验证是否都正确,这里我给每一个验证的函数添加了一个return,如果失焦验证正确,return true,否则 没有返回值。在“立即注册”的点击事件上,我需要获取前面所有的失焦事件的 return 值,如果都为 true 。就向后台发送注册的请求。
那么我的问题是,点击事件的函数中,如何获取失焦事件函数的返回值呢?
我把用户名的验证函数贴上吧!
registerUsername.blur(function() { usrBlur(); }); //return true ;表示用户名设置正确且可用 function usrBlur(){ /*验证用户名输入是否合法的正则表达式 * ·由字母a~z(不区分大小写)、数字0~9、点、减号或下划线组成 * ·支持中文 ·只能以字母或中文开头,包含字符 数字 下划线,例如:beijing.2008 ·用户名长度为4~18个字符 */ var patten = /^(?!_)(?!.*?_$)[a-zA-Z0-9_u4e00-u9fa5]+$/ ; if(registerUsername.val() == ""){ registerUsername.addClass("warning"); registerUsername.placeholder = "用户名不能为空!"; console.log("输入内容为空!"); } else if(!patten.test(registerUsername.val())){ registerUsername.addClass("warning"); console.log("用户名格式有误!"); } /*验证用户名是否已经存在*/ else { var url = "login/checkData"; //alert(registerUsername.val()); $.ajax({ type:"get", url:url,//接口 dataType: "json", data:{ usr:registerUsername.val() }, success:function (data) { $.each(data,function(key,value){ //console.log(value); if(value == "用户名可用!"){ console.log(value); registerUsername.removeClass("warning"); registerUsername.addClass("success"); return true; } }); //alert(data.MESSAGE); }, error:function () { alert("用户名验证失败!"); } }); } }
哎呀,好迷醉呀!菜鸟表示已经被自己给绕晕了,求各位大神给我建议,除了让我放弃编程,我应该都能接受!
付费偷看金额在0.1-10元之间
一周热门 更多>