Bootbox回调无法正常工作

Pru*_*lli 8 javascript jquery bootbox

我想用这个:

 $('#delete').live('click',function(){
                var result;
                bootbox.confirm("Are you sure?", function(response){
                        result=response;
                });
                alert(result);
                return result;
            });
Run Code Online (Sandbox Code Playgroud)

但是当点击按钮时:

警报首先显示,并且仅在该引导框显示确认对话框后显示.

我想返回响应,但是如果我在回调中执行它不起作用,因为它返回来自回调的响应而不是$('#devicedelete').live('click',function(){});

顺便说一下,我正在尝试根据回复提交表格.因此,如果我返回'true'表单将被提交,否则如果它返回'false',表单将不会被提交.

请查看:http://pastebin.com/9H3mxE9Y

我有一个大表,每行有复选框,用户选择复选框,然后点击任何按钮'删除','复制'等,应提交表格.

谢谢

Dal*_*las 4

该对话框是异步的,您可以立即阻止默认操作,然后在用户接受时调用提交。这是一个例子: http: //jsfiddle.net/ty5Wc/3/

$('#delete').on('click', function (e) {
    e.preventDefault();
    bootbox.confirm("Are you sure?", function (response) {        
        if(response) {
            $('#form').submit();
        }
    });
});
$('#form').submit(function () {
    //do your validation or whatever you need to do before submit
});
Run Code Online (Sandbox Code Playgroud)

编辑:与OP进行更多交谈后,他还想在查询字符串中传递按钮值,我的解决方案在这里: http: //jsfiddle.net/ty5Wc/5/

$('#delete').on('click', function (e, confirmed) {
    if (!confirmed) {
        e.preventDefault();
        bootbox.confirm("Are you sure?", function (response) {
            if (response) {
                $('#delete').trigger('click', true);
            }
        });
    }
});
$('#form').submit(function (e) {
    //do your validation or whatever you need to do before submit
});
Run Code Online (Sandbox Code Playgroud)