本篇文章给大家分享的是有关ajax返回值给外部函数如何解决,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
创新互联是专业的远安网站建设公司,远安接单;提供网站设计、成都做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行远安网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
如下所示:
function validateUser(mya){ var val=mya.name; val = $.trim(val); var flag=true; if(val != ""){ var url1="${pageContext.request.contextPath}/group/getUserCount" var data1= {"gid":val, time:new Date()}; $.post(url,data1,function(data){ // 1 表示用户名为空,可以注册 if(data=="1"){ alert("不能删除,改组中有用"); flag=false; }else{ flag=true; } }) if(flag==0){ //没有有用户 return true; }else{ alert("改组中含有用户,不能删除"); return false; } } }
问题:$.post的回调函数是在一个闭包中,有自己的作用域,返回值对于外部的函数不起作用,
可以在外部定义全局变量flag,但是 $.post异步请求,提前返回了flag, flag永远的默认值,
解决方式:使用$.ajax,把 异步请求设置为同步请求
其实 ajax功能非常强大,可以直接不用拼接json
$.ajax({ url:url1, async:false, data:data1, success:function(data){ flag=data; }
以上就是ajax返回值给外部函数如何解决,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。
本文名称:ajax返回值给外部函数如何解决
URL网址:https://www.cdcxhl.com/article32/isjhsc.html
成都网站建设公司_创新互联,为您提供定制开发、手机网站建设、外贸网站建设、虚拟主机、域名注册、响应式网站
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联