js 如何实现程序的暂停

比如我有js函数:

 function getA(){
     datas = {
            id : 1234
        };
     var a;
     $.ajax({
        type:"POST",
        url:"*******",
        async:false,
        data:datas,
        success:function(result) {
            if(result != null) {
                a = result;
            }
        }
     });
     //想在此处让程序暂停2~3秒。
     return a;
 }

程序如上面所示,由于用ajax异步从后台获取数据,数据还未取到,但程序已经return了,所以后面取到的值就变成了undefined。因此我想在return a 之前让程序在那里暂停2~3秒,这样a的值就会发生了变化,返回时就不会是undefined了。如何改进。setTimeOut();试了,也没效果。

5个回答

function cbk(a) { //回调函数接收异步请求返回的数据 a
var myA = a;
.......;
}
function getA(cbk){

$.ajax({
    ...
    success : function(result) {
        if(result) {
            cbk(result); // 将请求成功返回的数据传给回调函数
        }
    }
});

}

return放回掉函数里面。不然没有用
success 里面

qq_29594393
当作看不见 回复谁特么用了我的昵称: 都放在回掉函数里面处理。或者,你自己的那个延时函数这种方法(优化一下,setInterval() ,循环检测值是否为undefined ,不是的话,向下执行,是的话继续等待下一次检测),
接近 3 年之前 回复
Myc_CSDN
和Java狼狈为奸 回复当作看不见: 我有多个地方要调用这个函数。怎么放啊
接近 3 年之前 回复
qq_29594393
当作看不见 回复谁特么用了我的昵称:把你要处理的事件放在回掉函数里面吧
接近 3 年之前 回复
Myc_CSDN
和Java狼狈为奸 不行啊,试过了。
接近 3 年之前 回复

看了你代码ajax是同步的,如果能执行到success回掉getA是可一得到a的返回值的,自己在success回掉里面增加alert看看有执行执行到success没有先

Myc_CSDN
和Java狼狈为奸 谢谢
接近 3 年之前 回复

你可以先停2.5秒在获取jax

Myc_CSDN
和Java狼狈为奸 谢谢。
接近 3 年之前 回复

在success里面return a

Myc_CSDN
和Java狼狈为奸 谢谢
接近 3 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
如何实现程序的暂停??
程序执行到某一位置,继续保持此状态,不向下执行,直到被其它事件触发以后(如按下space键)才会继续执行rn 请问如何实现这个功能??
如何实现一个程序的暂停?
设置了变量m_bStop,rn主程序为一个循环rnfor(i=1;i
暂停asp程序如何实现?
生成静态页的asp程序,具体是:获得起始SID和结束EID后,循环生成SID和EID之间的静态页.rn由于生成静态页很耗费服务器资源,如何实现每过10个ID后,让程序暂停10秒,后让程序再继续?
JS如何暂停时间。
自己定义了个时间函数;获得当前系统时间,时分秒。再用一个按钮事件来开始、暂停时间;该如何做。rn详细说明,注释
asp.net前段的timer如何暂停?(js实现)
主页面通过控件周期性刷新,现在新增一个功能:rn即在有些时候需要暂停刷新,(例如用一个checkbox,勾选了刷新就定时刷新,否则不刷新)rnrn求咋个通过js来实现??
求实现暂停的程序!!!
本人对VB一窍不通,急需一个类似于SLEEP的vbs程序,以实现暂停的功能,请各位大侠帮助解决!
js实现暂停,淡出效果。
1. function sleep(t){ for(var d = Date.now();Date.now()-t } sleep(5000); //暂停五秒 2. $(selector).fadeOut(speed,callback)      //callback是回调函数,可选。speed是速度快慢,(fast,normal,slow)依次变慢,也可直接填毫秒数,指定时长
如何暂停程序的执行!
如果在winform中有这样的方法rnprivate void a()rnrn b();//现在我希望当在b()中满足一定的条件后,不运行c(),该怎么弄??不用if作判断rn c();rnrnprivate void b()//返回voidrnrnprivate void c()rnrn我知道在asp.net中可以用Response.End();来实现,在winform中可以吗?
如何暂停程序的执行??
myRTB.AppendText("你好!"); rnmyRTB.AppendText("开始!"); rnrn如何在执行完第一句代码后让程序暂停5秒后再执行第二句。
如何暂停一个程序
TextVIew显示已段文本内容程序暂停,然后监听TextView,等待点击激活使TextVIew显示下一个文本内容。rn如何暂停和唤醒程序?rn不用Switcher,这个问题如何解决。
如何暂停程序?
作了一个程序,下载相应的文件。下载的时间很长,过程中整个窗口界面基本上都死掉了,怎么能设计一个暂停按钮呢?rn谢谢
vbscript程序如何实现暂停执行?
vbscript程序如何实现暂停执行?我准备调试一下程序,执行一段程序后看执行结果,然后继续执行后续程序。
c#视频捕捉程序的暂停如何实现
[code=C#]rn string s;rn AMMediaType mt = new AMMediaType();rn int hr = fileWriterFilter.GetCurFile(out s, mt);rn if (hr < 0) Marshal.ThrowExceptionForHR(hr);rn if (mt.formatSize > 0)rn Marshal.FreeCoTaskMem(mt.formatPtr);rn hr = fileWriterFilter.SetFileName(filename, mt);rn if (hr < 0) Marshal.ThrowExceptionForHR(hr);rn[/code]rnrnc#做一个从摄像头捕捉视频的程序,并把视频存入文件。rn但是如何实现视频捕捉的暂停和继续,并写入到同一个文件中?rn暂停过程的视频流不写入文件。
如何实现暂停功能?
rn界面上有3个按钮:begin、stop、pausernrn单击begin:开始计算rnrn单击stop:计算终止rnrn单击pause:计算暂停rnrndelphi中如何实现rnrn谢谢
如何实现程序运行暂停?
我的程序是这样:10分钟检查一下网络是否连接到internet 如何实现这个10分钟的暂停呢.但是必须还能响应外部事件..比如键盘.
如何实现线程的暂停?
[code=C/C++]HANDLE m_RunSQL_Thread;rnunsigned m_RunSQL_ThreadId;rnrn//开始rnvoid CSQLToolsDlg::OnBnClickedBcStart()rnrn m_RunSQL_Thread = (HANDLE)_beginthreadex( NULL, 0, RunSQL , this, 0, &m_RunSQL_ThreadId );rn if (NULL == m_RunSQL_Thread)rn return;rnrnrnunsigned __stdcall CSQLToolsDlg::RunSQL( void * obj )rnrn CSQLToolsDlg *dlg = (CSQLToolsDlg *)obj;rnrn //do something...rnrn return 0;rnrnrn//暂停rnvoid CSQLToolsDlg::OnBnClickedBcStop()rnrn //1.如何暂停线程?rn[/code]rnrn2.如何实现:当再点“开始”的时候,可以从上次暂停的地方开始继续?
如何实现暂停功能!!
我在一个循环中用下面的代码: rnMSG message; //交出控制 rn dorn rn while(::PeekMessage(&message,NULL,0,0,PM_REMOVE))rn rn ::TranslateMessage(&message);rn ::DispatchMessage(&message);rn rn while(pause==TRUE);rnrn有时候可以,但是经常在暂停后,进行一些操作后,程序不能继续执行,不知道是什么原因?rn是不是代码的问题?rn不知道还有什么好的方法?rnrn
如何实现播放暂停
《从零开发一个iOS企业级项目实战之我的云音乐》这门课程是我们为iOS软件工程师打造的一门项目实战课程,目的是从零开发一个完整的音乐软件,让大家能从中学习到真正的知识,成为行业的高端人才,拥有更好的人生规划。
C语言实现程序的暂停
在C语言中有时候需要实现程序的暂停:在某一步暂停一下,或者需要实现人工控制程序进度。这个时候需要加上几个常用的函数来实现,下面有两种方法:: 1> system(“pause”); 这种方法需要加上头文件 #include #include int main(void) { printf("I need a pause here.\n"); system("pause"
暂停程序
怎么让程序暂停住,用户给单击事件后在继续运行
linux下如何暂停后台运行的程序
在终端中运行一个程序(不加&),然后用ctrl+z可以把程序“暂停到后台”,用bg可以让他在后台运行,如何让它再次“暂停到后台”(不要说用fg,再用ctrl+z之类的)
请问如何暂停某一程序?
请问如何暂停某一程序?,等另一程序运行完之后再接着运行?谢谢
如何让程序在中间暂停?
Dim xl As New Excel.ApplicationrnDim WorkbookOpen As WorkbookrnSet WorkbookOpen = xl.Workbooks.Open("c:\test.xls", , False)rnxl.Visible = TruernDoEventsrnMsgBox "ok"rnOn Error Resume NextrnWorkbookOpen.ClosernSet WorkbookOpen = NothingrnSet xl = NothingrnOn Error GoTo 0rn我想等用户关闭EXCEL后弹出"ok"提示框,怎么做?
如何使程序运行时暂停?
如何使程序运行时暂停?按任意键或特定键继续!谢谢各位老兄!(请举例)
游戏暂停2(暂停实现)
继续第一篇的实战项目学习,完成游戏“弹道精英”后期开发,特效、音效的控制等至打包上线。
DirectSound中如何实现暂停?
流式播放, 直接Stop然后再Play()可以吗? 我试了下,失败:(
如何实现游戏的(暂停\继续)
暂停MIDlet(可能启动多个线程)rn继续从暂停的地方恢复rn
如何实现线程的暂停与resume?
[code=csharp]rnclass A : Window rn B b;rn Thread thread;rn rn A() rn b = new B();rn thread = new Thread(b.doSomething);rn rn rn void start() rn thread.Start();rn rn rn void pause() rn //不要使用下面这个方法rn //thread.Suspend();rn rn rn void resume() rn //不要使用下面这个方法rn //thread.Resume();rn rnrnrnrnclass B rn void doSomething() rn for(int i = 0; i!=10000; ++i) rn File file = ....rn writeToFile(".....", file);rn writeToFile(".....", file);rn writeToFile(".....", file);rn //......rn writeToFile(".....", file);rn rn file.save();rn rn rnrn[/code]rnrn现有A、B两类,A类为GUI,B类为真正执行任务的类rn现在我想在A类上放一个按钮,来控制任务的暂停和继续rn由于B类的 doSomething() 函数中,每次循环都是写入一个文件,所以我想要“在每次写完一个文件后再暂停”,即:在file.save();后判断要不要继续循环rn我觉得可以通过用一个bool isPaused变量和Thread.Sleep(500);来实现,但是感觉又丑又傻,所以就想请教一下,有没有通过Thread类来实现的方法?
如何 实现暂停按钮的编程
接收数据太大 需要用暂停按钮,MFC串口通信
js中怎样让setInterval实现暂停
我有两个问题。rnrn我做的是一个00:00:00的跑秒定时器。rn第一个问题:怎么让setInterval实现暂停呢。rn第二个问题:假如时间暂停之后停在00:00:35,再点继续怎么样让定时器从00:00:35继续跑呢。rnrnrn我的定时器代码如下,你们可以直接复制运行:rnrnrnrnrn rn rn rn rnrnrnrnrn rnrnrnrn
如何用JS实现音乐播放、暂停
刚开始学习的时候,我不懂怎么在HTML中播放音乐,其实很简单的,只要一句代码配合js使用就OK了。好了请看下面的代码 源代码: &amp;amp;lt;!doctype html&amp;amp;gt; &amp;amp;lt;html&amp;amp;gt; &amp;amp;lt;head&amp;amp;gt; &amp;amp;lt;meta charset=&amp;quot;utf-8&amp;quot;&amp;amp;gt; &amp;amp;lt;title&amp;amp;gt;无标题文
JS实现控制HTML5背景音乐播放暂停
JS实现控制HTML5背景音乐播放暂停 首先在网页中嵌入背景音乐,html5代码为: &amp;lt;script src=&quot;http://wuover.qiniudn.com/jquery.js&quot;&amp;gt;&amp;lt;/script&amp;gt; &amp;lt;a class=&quot;mscBtn&quot; id=&quot;audioBtn&quot; title='最幸福的人' style=&quot;...
js实现图片的匀速移动(开始、暂停)
 下面例子只是写了个上下移动的情况,对于左右移动,以及其他变换(translate、translate3d、translateZ、scale、rotate、skew等)也是同样的思路,自行去实现。 &amp;lt;!DOCTYPE html&amp;gt; &amp;lt;html lang=&quot;cmn-Hans-CN&quot;&amp;gt; &amp;lt;head&amp;gt; &amp;lt;meta charset=&quot;UTF-8...
js 计时器 暂停问题
rnrn J5_8rnrnrn rn rn rn rn rn rnrnrnrn这是一段计时器代码,想添加一个暂停按钮,该怎么修改呢?各位帮忙啊~
js暂停函数
[code=&quot;java&quot;]//js暂停函数 function Pause(obj,iMinSecond){ if (window.eventList==null) window.eventList=new Array(); var ind=-1; for (var i=0;i
暂停JS向下执行。
如:rnvar a = 1;rn暂停3秒,再执行下面代码;rnvar b = 2;rnrn
暂停JS向下执行
var a = 1;rn暂停3秒;rnvar b = 2;
js 暂停执行
转原文件:http://blog.csdn.net/liangzhongqin/article/details/6400452     js 暂停执行         //js暂停函数      function Pause(obj,iMinSecond){          if (window.eventList==null) window.eventList=new Ar...
打印机暂停程序 自动暂停打印机
自动暂停打印机 配合2003的web控制 可以有效的控制办公室内的打印机 防止员工滥用打印机资源
如何在VB中实现程序的暂停
编译后,在运行过程中
相关热词 c# stream 复制 android c# c#监测窗口句柄 c# md5 引用 c# 判断tabtip 自己写个浏览器程序c# c# 字符串变成整数数组 c#语言编程写出一个方法 c# 转盘抽奖 c#选中treeview