程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> 延時-js 如何實現程序的暫停

延時-js 如何實現程序的暫停

編輯:編程解疑
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();試了,也沒效果。

最佳回答:


function cbk(a) { //回調函數接收異步請求返回的數據 a
var myA = a;
.......;
}
function getA(cbk){

$.ajax({
    ...
    success : function(result) {
        if(result) {
            cbk(result); // 將請求成功返回的數據傳給回調函數
        }
    }
});

}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved