博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jQery Ajax 执行顺序
阅读量:6705 次
发布时间:2019-06-25

本文共 1131 字,大约阅读时间需要 3 分钟。

hot3.png

项目中,经常需使用到jquery ajax请求后台数据校验前端用户输入数据的有效性,然后根据服务器返回的结果来确定是否允许本次的请求数据可以提交服务器

通过ajax请求后台校验前端用户输入数据

function checkUserName(userName){	$.ajax({		method:"POST",		url:"../front/checkUserName",		data:{"userName":userName},		success:function(data){			if(data.errCode < 0){				alert(data.errMsg);				return true;			}		},		error:function(){			alert("系统异常,请稍后重试");			return false;		}	});	return true;}$(function(){	if(!checkUserName($("#userName").val().trim())){return ;}	$("form").submit();});

checkUserName函数的返回值始终是true,并且在提交数据到服务器时,会出现请求失败,回调error函数,可通过浏览器控制台F12查看http请求。究其原因如下jquery中文文档所说: jquery中文文档

解决此问题的办法只需要在ajax请求中增加async(默认为true)参数并赋值为false,始之为同步请求,也就是后面的代码需要等待此次ajax请求结束后在执行,所以,达到此要求的代码如下:

function checkUserName(userName){	$.ajax({		method:"POST",		async:false,		url:"../front/checkUserName",		data:{"userName":userName},		success:function(data){			if(data.errCode < 0){				alert(data.errMsg);				return true;			}		},		error:function(){			alert("系统异常,请稍后重试");			return false;		}	});	return true;}$(function(){	if(!checkUserName($("#userName").val().trim())){return ;}	$("form").submit();});

转载于:https://my.oschina.net/skyAcross/blog/686875

你可能感兴趣的文章
Jar
查看>>
kafka Windows客户端Linux服务器---转
查看>>
hadoop mapreduce 基础实例一记词
查看>>
Oracle Trunc
查看>>
链表中倒数第k个结点
查看>>
traceroute工作原理
查看>>
C++入门知识总结(1)
查看>>
IntegrityError duplicate key value violates unique constraint - django/postgres
查看>>
Android -- 自定义View小Demo,关于Rect绘制Android机器人(一)
查看>>
【Todo】Nodejs学习计划
查看>>
快速缓存接口开发
查看>>
SQLAlchemy ORM高级查询之过滤,排序
查看>>
Tomcat源码解读系列(一)——server.xml文件的配置
查看>>
进程的创建与可执行程序的加载
查看>>
大商创 sql追踪 卖家入驻
查看>>
CSS中如何把Span标签设置为固定宽度
查看>>
android设计的布局在阿拉伯语下界面错乱的解决方法
查看>>
HDU 1253 胜利大逃亡 NYOJ 523【BFS】
查看>>
VIM 插入
查看>>
iOS 开发如何入门
查看>>