我正在为下面的代码执行setInterval。在点击按钮时,我必须一个接一个地执行以下操作
// show VM started
vmstart = setInterval(function () {
$.get('/getVMstatus', function (data) {
if (data != "") {
clearInterval(vmstart);
$("#vmstart").show();
$("#vmstart").html(data[0].ip)+".....</br>";
$.post('/deleteReport', function (data) {});
}
});
}, 5000);
// get VM IP Address
inter = setInterval(function () {
$.get('/getVm', function (data) {
if (data != "") {
clearInterval(inter);
$("#vmipdiv").show();
$("#vmipdiv").html("VM IP : " + data[0].ip);
$.post('/deleteReport', function (data) {});
}
});
}, 6000);
// Test start
teststart = setInterval(function () {
$.get('/geteststatus', function (data) {
if (data != "") {
clearInterval(teststart);
$("#teststart").show();
$("#teststart").html("Test Starting in "+data[0].ip+"</br>");
$.post('/deleteReport', function (data) {});
}
});
}, 11000);
我在点击按钮时需要的是
先调用/getVMstatus
后才将数据填充到html调用/getVM
,获取此数据后调用/getteststatus
,这是怎么可能的?
发布于 2014-01-28 17:36:59
您可以在一个函数中调用另一个函数
$.get('/getVMstatus', function (data) {
if (data != "") {
$("#vmstart").show();
$("#vmstart").html(data[0].ip)+".....</br>";
$.post('/deleteReport', function (data) {
$.get('/getVm', function (data) {
if (data != "") {
$("#vmipdiv").show();
$("#vmipdiv").html("VM IP : " + data[0].ip);
$.post('/deleteReport', function (data) {
$.get('/geteststatus', function (data) {
if (data != "") {
$("#teststart").show();
$("#teststart").html("Test Starting in "+data[0].ip+"</br>");
$.post('/deleteReport', function (data) {});
}
});
});
}
});
});
}
});
发布于 2014-01-28 17:39:21
尝试完成回调
/ show VM started
$.get('/getVMstatus', function (data) {
if (data != "") {
$("#vmstart").show();
$("#vmstart").html(data[0].ip)+".....</br>";
$.post('/deleteReport', function (data) {});
}
}).done(function(){$.get('/getVm', function (data) {
if (data != "") {
$("#vmipdiv").show();
$("#vmipdiv").html("VM IP : " + data[0].ip);
$.post('/deleteReport', function (data) {});
}
}).done(function(){
$.get('/geteststatus', function (data) {
if (data != "") {
$("#teststart").show();
$("#teststart").html("Test Starting in "+data[0].ip+"</br>");
$.post('/deleteReport', function (data) {});
}
});
});
});
https://stackoverflow.com/questions/21401540
复制相似问题