页面验证1——ajax异步提交
2012-07-03 10:16
225 查看
页面有两个ajax验证,用户名是不是已注册,邮箱是不是已注册
在页面提交时异步验证用户名和邮箱,两个异步请求后一个会覆盖前一个请求,更改在提交两个验证用一次异步请求,根据相应结果判断。
var xmlHttp; function createXmlHttpRequest() { if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); if (xmlHttp.overrideMimeType) { xmlHttp.overrideMimeType("text/xml"); } } else if (window.ActiveXObject) { try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } } if (!xmlHttp) { window.alert("你的浏览器不支持创建XMLhttpRequest对象"); } return xmlHttp; } var issubmit2 = false; //一个请求响应处理两个ajax验证请求 function checkEmailAndLogname() { url = $("#a").attr("href"); createXmlHttpRequest(); url = "./" + url + "?Name=" + document.getElementById("tbUlogname").value + "," + document.getElementById("tbUemail").value + "&Event=CheckUemailAndLogname"; xmlHttp.open("post", url, true); xmlHttp.onreadystatechange = function() { checkEmailAndLognameResult() }; xmlHttp.send(null); } function checkEmailAndLognameResult() { if (xmlHttp.readyState == 4)//服务器响应状态 { if (xmlHttp.status == 200)//代码执行状态 { var regExValue = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/; var tbemail = document.getElementById("tbUemail").value; var flag = regExValue.test(tbemail); var pw1 = document.getElementById("tbUlogname").value; // alert(xmlHttp.responseText); switch (xmlHttp.responseText) { case "1": if (!flag) { $("#img3").attr("src", "../images/16_info.png"); $("#A3").attr("innerHTML", "邮箱格式不正确。"); $("#tbUemail").css("border", " 2px red solid"); issubmit2 = false; } else { $("#img3").attr("src", "../images/fzcg_dh.gif"); $("#A3").attr("innerHTML", ""); $("#tbUemail").css("border", " 1px #ccc solid"); issubmit2 = true; } if (!(pw1.length > 3 && pw1.length < 17)) { $("#img").attr("src", "../images/16_info.png"); $("#tt").attr("innerHTML", "用户名应该大于4位小于16位"); $("#tbUlogname").css("border", " 2px red solid"); issubmit = false; } else { $("#img").attr("src", "../images/fzcg_dh.gif"); $("#tt").attr("innerHTML", ""); $("#tbUlogname").css("border", " 1px #ccc solid"); issubmit = true; } break; case "2": if (!flag) { $("#img3").attr("src", "../images/16_info.png"); $("#A3").attr("innerHTML", "邮箱格式不正确。"); } else { $("#img3").attr("src", "../images/16_info.png"); $("#A3").attr("innerHTML", "邮箱已被使用,请更换邮箱再注册。"); } $("#tbUemail").css("border", " 2px red solid"); if (!(pw1.length > 3 && pw1.length < 17)) { $("#img").attr("src", "../images/16_info.png"); $("#tt").attr("innerHTML", "用户名应该大于4位小于16位"); $("#tbUlogname").css("border", " 2px red solid"); issubmit = false; } else { $("#img").attr("src", "../images/fzcg_dh.gif"); $("#tt").attr("innerHTML", ""); $("#tbUlogname").css("border", " 1px #ccc solid"); issubmit = true; } issubmit = false; break; case "3": if (!flag) { $("#img3").attr("src", "../images/16_info.png"); $("#A3").attr("innerHTML", "邮箱格式不正确。"); $("#tbUemail").css("border", " 2px red solid"); } else { $("#img3").attr("src", "../images/fzcg_dh.gif"); $("#A3").attr("innerHTML", ""); $("#tbUemail").css("border", " 1px #ccc solid"); } if (!(pw1.length > 3 && pw1.length < 17)) { $("#img").attr("src", "../images/16_info.png"); $("#tt").attr("innerHTML", "用户名应该大于4位小于16位"); } else { $("#img").attr("src", "../images/16_info.png"); $("#tt").attr("innerHTML", "用户名已存在,可以使用中文"); } $("#tbUlogname").css("border", " 2px red solid"); issubmit = false; break; case "4": if (!flag) { $("#img3").attr("src", "../images/16_info.png"); $("#A3").attr("innerHTML", "邮箱格式不正确。"); } else { $("#img3").attr("src", "../images/16_info.png"); $("#A3").attr("innerHTML", "邮箱已被使用,请更换邮箱再注册。"); } $("#tbUemail").css("border", " 2px red solid"); if (!(pw1.length > 3 && pw1.length < 17)) { $("#img").attr("src", "../images/16_info.png"); $("#tt").attr("innerHTML", "用户名应该大于4位小于16位"); } else { $("#img").attr("src", "../images/16_info.png"); $("#tt").attr("innerHTML", "用户名已存在,可以使用中文"); } $("#tbUlogname").css("border", " 2px red solid"); issubmit = false; break; } } } }
在页面提交时异步验证用户名和邮箱,两个异步请求后一个会覆盖前一个请求,更改在提交两个验证用一次异步请求,根据相应结果判断。
相关文章推荐
- js登录特效+ajax提交表单+异步刷新验证
- JSP页面通过Ajax异步验证input输入框的数据
- form表单submit提交时,用ajax做异步验证
- form提交不刷新页面、不用AJAX 也能实现类似"异步更新"效果
- ajax注册页面异步验证
- Asp.net 登陆页面的Ajax异步身份验证的实现
- ajax实现注册页面动态验证用户名是否已注册,不必提交即可验证
- Ajax表单异步提交及验证
- ajax实现注册页面动态验证用户名是否已注册,不必提交即可验证。
- 基于Ajax,异步表单验证,实现有一条件不满足不能提交
- ajax提交请求到后台以及页面数据的一些验证
- ajax提交异步验证
- ajax提交异步验证
- MVC AJAX.BeginForm() 页面异步提交
- jquery---------ajax+validate表单异步提交验证
- ajax异步提交 页面请求
- jquery---ajax异步提交+validate表单验证
- JavaScript解决一个带验证的Form两个Submit事件(一个页面保持不动【AJAX实现】,一个页面提交并跳转)的场景
- 做注册的验证,在服务器端处理,客服端ajax异步提交数据
- ajax异步核心内容示例:实现页面中异步验证账号是否已存在