Bootstrap禁用按钮不停留

时间:2013-12-08 06:16:59

标签: javascript jquery twitter-bootstrap

我想要做的是一旦点击一个按钮,禁用它,然后运行一个功能,然后一旦它完成运行该功能,重新启用按钮,我正在尝试这个,但按钮只禁用一秒钟,然后在函数运行完成之前重新启用:

<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);});
}

1 个答案:

答案 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);
        }
    });
});