Bootbox回调无法正常工作

我试图使用这个:

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

但是,当按钮被点击时:

只有在Bootbox显示确认对话框后才会显示警报。

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

顺便说一句我试图提交一个基于响应的形式。 所以如果我返回'真'表单将被提交,否则,如果它返回'假',表格将不会被提交。

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

每行都有一个带有复选框的大表,用户选中复选框并点击任何按钮的“删除”,“复制”等,并提交表单。

谢谢


该对话框是异步的,您可以立即阻止默认操作,然后在用户接受时调用提交。 这里是一个例子: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
});

编辑:与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
});
链接地址: http://www.djcxy.com/p/71735.html

上一篇: Bootbox callback not working properly

下一篇: Returning value from Parent