为什么我写的jquery验证有时候不执行,直接跳过

g084120209 发布于 2016/09/28 10:57
阅读 323
收藏 1
我写累了个jquery的验证,其中向后台发送请求查询数据是否重复的验证有时候根本不执行,直接跳过,求各位大神指点,小弟不胜感激!代码如下
js验证的代码
function verification() {
	var flag = true;
	var time=new Date().getTime();
	if($("#trainName").length>0){

		if ($("#trainName").val() == "" || $("#trainName").val() == null) {
			$("#trainNameErr").css("display", "inline-block");
			return  false;
		} else {
			$("#trainNameErr").css("display", "none");
		}
		
		if ($("#trainName").val().length > 20) {
				$("#trainNameErr").replaceWith("<a id='trainNameErr'>*名称不能超过20</a>");
				$("#trainNameErr").css("display", "inline-block");
				return  false;
			} else {
				$("#trainNameErr").css("display", "none");
			}
		
		$.get("pptvideo_trainNameIsRepeat?t="+time, {
			trainName : $("#trainName").val().trim(),
			id:$("#pptvideoId").val()
		}, function(data) {
			if (data.result == 0) {
				i = 1;
				$("#trainNameErr").css("display", "none");
			} else {
				$("#trainNameErr").replaceWith(
						"<a id='trainNameErr'>*名称已经存在!</a>");
				$("#trainNameErr").css("display", "inline-block");
				return false;
			}
		});
	}
	if ($("#endLooktimeView").length > 0) {
		if ($("#endLooktimeView").val() == "" || $("#endLooktimeView").val() == null) {
			$("#endLooktimeViewErr").css("display", "inline-block");
			return  false;
		} else {
			$("#endLooktimeViewErr").css("display", "none");
		}
		
		if ($("#endLooktime").length > 0) {
			
			if ($("#endLooktime").val() <=time) {
				$("#endLooktimeViewErr").replaceWith("<a id='endLooktimeViewErr'>*时间要大于今天</a>");
				$("#endLooktimeViewErr").css("display", "inline-block");
				flag = false;
			} else {
				$("#endLooktimeViewErr").css("display", "none");
			}
		}
	}
	return flag;
}

数据填写界面待验证之后执行的代码:
function 	publishInfo(){
		var flag=verification();
		if(flag==true){
			$("form:first").submit();
		}
		
	}



加载中
0
dreambob
dreambob
这个是一个很简单的问题,你写的这个在向后台发送数据请求验证的时候走的异步,程序在这个位置会继续往下走,你把向后台发送请求数据验证的改成同步就可以了,程序走到这个位置的时候会等待响应结果,如果一直没有返回结果,程序是一直保持等待的状态
0
g084120209
g084120209
真的多谢了!
返回顶部
顶部