冉冉說
2019-03-20 16:19:18
//循環復制$(".forExecute").click(function(){ var tableSign = $("#tableSign").val(); if(!(tableSign > 0)){ layer.msg("請選擇要復制的數據"); return; } var forNum = $("#forNum").val(); for(var i = 1; i <= forNum; i++){ var data = { "tableSign":tableSign, "pageNo":i, "pageSize":$(".pageSize").val(), "startDate":$(".startDate").val() }; setTimeout(executeDataCopy(data),5000); }})function executeDataCopy(data){ $.ajax({ type: "get", url: "executeCopyData.do", data:data, dataType: 'json', success: function(data){ if(data != null && data.success != null){ layer.alert(data.msg); } else { layer.alert("系統繁忙,請稍后再試"); } } });}
6 回答

慕慕森
TA貢獻1856條經驗 獲得超17個贊
這樣就可以了
for(var i =1; i<10; i++){
(function(a){
var data = 123456;
setTimeout(function(){
console.log(data);
}, **a*2000**);
})(i);
}

收到一只叮咚
TA貢獻1821條經驗 獲得超5個贊
setTimeout(executeDataCopy(data),5000);
這句executeDataCopy已經被立刻執行了,可以用下面的方式傳參:
setTimeout(executeDataCopy,5000,data);

眼眸繁星
TA貢獻1873條經驗 獲得超9個贊
setTimeout(executeDataCopy(data),5000);
這么寫就相當于直接執行executeDataCopy(data);
再套一層:
setTimeout(function(){
executeDataCopy(data)
},5000);
就行了

飲歌長嘯
TA貢獻1951條經驗 獲得超3個贊
添加回答
舉報
0/150
提交
取消