jQuery的ajax,当async为false时,同步操作失败。解决方案

引发失败时代码:

 $.ajax({
                url : 'your url',
                data:{name:value},
                cache : false,
                async : true,
                type : "POST",
                dataType : 'json/xml/html',
                success : function (result){
                    return result;
                }
            });

解决方案:

 var ret = null;
$.ajax({
                url : 'your url',
                data:{name:value},
                cache : false,
                async : true,
                type : "POST",
                dataType : 'json/xml/html',
                success : function (result){
                    ret=result;
                }
            });
return ret;

说明:

不要在success的回调函数中直接return,具体原因后面在考察!!

时间: 2024-08-06 01:03:45

jQuery的ajax,当async为false时,同步操作失败。解决方案的相关文章

jQuery的ajax,当async为false时,同步操作失败。解决方式

引发失败时代码: $.ajax({ url : 'your url', data:{name:value}, cache : false, async : true, type : "POST", dataType : 'json/xml/html', success : function (result){ return result; } }); 解决方式: var ret = null; $.ajax({ url : 'your url', data:{name:value},

jQuery使用ajax方法提交登陆信息时,遇到特殊字符&

当我在做登陆页面的时候,常常会用到ajax方法来检测用户信息所填写的内容是否符合规范要求.一开始,为了简单明了,快速实现功能,在使用jQuery时,是这样写的: $.ajax({ url : "{:U('public/checklogin')}", cache : false, type : 'POST', dataType : 'json', data : 'username='+$('#username').val()+'&password='+$('#password')

jquery用Ajax中的回调函数时注意事项

前端代码 <script language="javascript" type="text/javascript" src="<?php echo base_url();?>/js/jquery-1.7.2.min.js"></script> <script> function add_ip(bip,eip,area_id) { var action = "<?php echo si

jquery ajax的async属性的理解

1 $(function(){ 2 queryTemplateSort(); 3 // 4 fillAddTemplatePage(); 5 function queryTemplateSort() { 6 $.ajax({ 7 type: "post", 8 url: "http://localhost:8080/...", 9 data: {"pageNo": 1, "pageSize": 20}, 10 dataType

JQuery的Ajax跨域请求的解决方案

http://www.open-open.com/lib/view/open1334026513327.html 今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题,隐约记得Jquery有提过一个ajax跨域请求的解决方式, 于是即刻翻出Jquery的API出来研究,发现JQuery对于Ajax的跨域请求有两类解决方案,不过都是只支持get方式.分别是JQuery的 jquery.ajax jsonp格式和jquery.getScript方式. 什么是jsonp

JQuery的Ajax跨域请求原理概述及实例

今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题,隐约记得Jquery有提过一个ajax跨域请求的解决方式,于是即刻翻出Jquery的API出来研究,发 JQuery对于Ajax的跨域请求有两类解决方案,不过都是只支持get方式.分别是JQuery的 jquery.ajax jsonp格式和jquery.getScript方式. 什 么是jsonp格式呢?API原文:如果获取的数据文件存放在远程服务器上(域名不同,也就是跨域获取数据),则需要使用jsonp类型

jquery的$.ajax async使用详解

async在jquery ajax中是一个同步参数了,我们下面来给大家介绍在jquery ajax中使用async时碰到的一些问题与方法介绍,希望例子能给各位同学带来一些帮助哦. async默认是true, 即为异步方式, $.Ajax执行后, 会继续执行ajax后面的脚步, 直到服务器端返回数据后, 触发$.Ajax里的success方法. 这时候执行的是两个线程. var temp; $.ajax({ async: false, type : "POST", url : defau

JQuery中$.ajax()方法参数详解 及 async属性说明

url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 delete也可以使用,但仅部分浏览器支持. timeout: 要求为Number类型的参数,设置请求超时时间(毫秒).此设置将覆盖$.ajaxSetup()方法的全局设 置. async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求. 如果需要发送同步请求,请将此选项

jQuery的ajax async同步和异步介绍

项目中有这样一个需求,使用ajax加载数据返回页面并赋值,然后前端取出该值 这其中涉及到代码的顺序问题,有时后台还未返回数据,但已执行后面代码, 所以就会造成取不到值 $.ajax({ type: "post", url: "admin/PfmOptionRuleItem.do", success: function(data){ $("#ruleItem").val(data.ruleItem); //① } }); return $(&quo