我想要做的是一旦点击一个按钮,禁用它,然后运行一个功能,然后一旦它完成运行该功能,重新启用按钮,我正在尝试这个,但按钮只禁用一秒钟,然后在函数运行完成之前重新启用:
<button onclick='this.disabled=true;stop($vpsid)' type='button' class='btn btn-danger btn-sm'>Stop</button>
停止功能:
function stop(vpsid){
$.post('functions.php', {"func":"shutdown", "vpsid":vpsid}, function(data) {
alert(data);});
}
答案 0 :(得分:0)
AJAX调用是异步的,因此您需要使用回调函数。我建议你使用jQuery附加click处理程序并使用Bootstrap的按钮加载状态:
<强> HTML 强>
<button data-vpsid='$vpsid' type='button' data-loading-text='Stopping...' class='btn btn-danger btn-sm btn-stop'>Stop</button>
<强>的jQuery 强>
$('.btn-stop').click(function () {
$(this).button('loading');
$.ajax('functions.php', {
data: {
"func": "shutdown",
"vpsid": $(this).data('vpsid')
},
type: 'post',
complete: function () {
$(this).button('reset');
},
success: function (data) {
alert(data);
}
});
});