jquery中的ajax如何返回结果而非回调方式即为同顺序执行
因为默认ajax是异步的,也就是在未响应到结果时不影响向下的执行。所以必须采用回调的方式来实现。这种方案效率更高。
如果非要返回结果的话,将ajax 中的参数 async 改为 false,即为同顺序执行,如下实现,即可返回到结果。
function(url,params){
var outdata;
$.ajax({
type : "get",
async:false,
dataType:"json",
url : url,
data: params,
success : function(data){
outdata = data;
},
error:function(e){
alert('ajax error');
}
});
return outdata;
}
相关推荐
-
使用jQuery中的when实现多个AJAX请求对应单个回调的例子分享
我知道这些函数都是异步执行(asyncronously)并且会延迟一段时间返回,所以我想知道是否有一种方式,使我可以使用单个回调,并行地加载它们,就像JS加载器 curljs 所做的那样. 很幸运! 通过jQuery.when, 我可以并发地加载两个请求,只执行一次回调! jQuery 脚本正如我提到的,下面是加载脚本和一个JSON资源的用例: 复制代码 代码如下: $.when( $.getScript('/media/js/wiki-min.js?build=21eb633'), $.ge
-
谈谈Jquery ajax中success和complete有哪些不同点
废话不多说了,先给大家贴一段代码看看吧, $.ajax({ type: "post", url: url, dataType:'html', success: function(data) { }, complete: function(XMLHttpRequest, textStatus) { }, error: function(){} }); success : 当请求成功时调用的函数.这个函数会得到一个参数:从服务器返回的数据.当请求成功时调用函数,即status==200.
-
jquery ajax提交表单数据的两种方式
之前实现AJAX使用Javascript脚本一个一个敲出来的,很繁琐.学习Jquery之后就感觉实现AJAX并不是那么的困难了,当然除了Jquery框架外还有其它的优秀框架这里我就着重说下比较流行的Jquery.Jquery AJAX提交表单有两种方式,一是url参数提交数据,二是form提交(和平常一样在后台可以获取到Form表单的值).在所要提交的表单中,如果元素很多的话建议用第二种方式进行提交,当然你要是想练练"打字水平"的话用第一种方式提交也未尝不可,相信开发者都不想费白劲吧!
-
jQuery+ajax的资源回收处理机制分析
本文实例分析了jQuery+ajax的资源回收处理机制.分享给大家供大家参考,具体如下: jquery还有一个 complete对象,是请求完成后回调函数 (请求成功或失败之后均调用). 同时有两个参数XMLHttpRequest, textStatus.所以,我们只需要在请求完成后,将传回的XMLHttprequest对象手工回收即可,代码如下: $.ajax({ url: "http://localhost/do_ajax.php", data: { name: "xxx
-
Jquery版本导致Ajax不执行success回调函数
对于使用ajax来请求数据已经不是第一次使用(一直觉得也就那么回事),就在昨天居然遇到了一个问题?项目中需要用到ajax来进行数据的请求,于是三下五除二的将ajax代码拷贝到项目中,前端,后台数据处理完毕,测试(心想可以休息下下了),谁知数据成功返回.前端没报错,后台也没错,硬是没有执行success回调函数,心凉了一半. 接下来就是找原因,查看原先代码,百度,json格式检查,终于发现问题所在 罪魁祸首居然是Jquery版本所引起的. Jquery版本:jquery-1.9.0.min.js
-
jquery实现ajax提交form表单的方法总结
方法一: 复制代码 代码如下: function AddHandlingFeeToRefund() { var AjaxURL= "../OrderManagement/AjaxModifyOrderService.aspx"; alert($('#formAddHandlingFee').serialize()); $.ajax({ type: "P
-
jQuery Ajax Post 回调函数不执行问题的解决方法
今天在写一个检查用户名的功能时,使用的是jQuery.post( url, [data], [callback], [type] )这个函数,但是发现其中的回调函数不能执行. 先来看看我的代码: 前台代码: <script type="text/javascript"> function checkUser() { var user = $('#<%=txtUser.ClientID %>').val(); $.post('checkUser.ashx', {
-
jQuery Tips 为AJAX回调函数传递额外参数的方法
具体到这个例子,我们希望button1和button2点击之后,用AJAX的方式取example.html的内容,然后动态更新页面的id=callbackdemo3的div HTML如下: 复制代码 代码如下: <div id="callbackdemo1"> <button id="button1">ajax load1</button><br/> </div> <div id="call
-
JQuery AJAX提交中文乱码的解决方案
现象如下: 1)在Firefox下,处理页面的编码为gb2312,提交数据没有问题,中文能够正确解析: 2)在IE8下,处理页面的编码为gb2312,提交中文数据出现乱码. 无论是$.post还是$.ajax,抑或$.ajaxSubmit(来自于Form插件),在之前的UTF-8编码的网站都没有出现过任何问题, 看来是由于提交数据的网页的编码格式造成的了.不管怎么样,既然是浏览器之间存在差异,还是从HTTP包来看有什么问题吧. 打开Fiddle,分别用Firefox和IE做一个AJAX提交(以用
-
jQuery AJAX回调函数this指向问题
如在全局作用域调用一个含this的对象,此时当前对象的this指向的是window.为了让this的指向符合自己的意愿,JavaScript提供了两个方法用以改变this的指向,它们是call和apply,当然也有利用闭包来实现的方法.本文通过一个例子来说明这些问题. 先看一段演示代码,这代码只供演示用,没有实际意义. 复制代码 代码如下: //一个没有实际意义的socket连接对象 var socket = { connect: function(host, port) { alert('Co
-
jquery ajax的success回调函数中实现按钮置灰倒计时
主要是实现异步手机发送短信成功之后在ajax的success回调中实现将发送按钮置灰并倒计时,刚开始一直报js错误,问题可能出在于调用ajax之后this被更新,随意在这之前先把this对象赋给一个变量就没问题 按钮倒计时代码 复制代码 代码如下: var wait = 60; get_code_time = function (o) { if (wait == 0) { o.removeAttribute("disabled"); o.value = "免费获取验证码&qu
随机推荐
- 如何获知文件最后的修改日期和时间?
- jquery遍历筛选数组的几种方法和遍历解析json对象
- python实现统计汉字/英文单词数的正则表达式
- springmvc mybatis集成配置示例
- 调用jQuery滑出效果时闪烁的解决方法
- 快速解决eclipse中注释的代码依然会执行的问题
- javascript实现网页屏蔽Backspace事件,输入框不屏蔽
- mysql insert语句操作实例讲解
- 基于JavaScript实现回到页面顶部动画代码
- real server 的一个启动脚本例子(推荐)
- javascript函数中参数传递问题示例探讨
- C语言矩阵连乘 (动态规划)详解
- java 中线程等待与通知的实现
- 当jquery ajax遇上401请求的解决方法
- jquery中.add()的使用分析
- JS监控关闭浏览器操作的实例详解
- JavaScript中实现sprintf、printf函数
- 在PHP中使用反射技术的架构插件使用说明
- 查域名的MX记录
- Android编程调用系统自带的拍照功能并返回JPG文件示例【附demo源码下载】