从bootbox确认回调函数中获取值

3

console.log(r);没有输出。当使用bootbox时,如何将结果传递给r变量?

function jconfirm(m){
    bootbox.confirm({
        message: m,
        buttons: {
            'cancel': {
                label: 'No'                       
            },
            'confirm': {
                label: 'Yes',                   
            }
        },
        callback: function(result) {               
           return result;
        }
    });
}
 jconfirm('Do you really ....', function(r){
    console.log(r);                    
 });
3个回答

2
您可以尝试这种方法:
var jconfirm = function (message, callback) {
    var options = {            
        message: message
    };
    options.buttons = {
        cancel: {
            label: "No",
            className: "btn-default",
            callback: function(result) {
                callback(false);
            }
        },
        main: {
            label: "Yes",
            className: "btn-primary",
            callback: function (result) {
                callback(true);
            }
        }
    };
    bootbox.dialog(options);
};


$('#delete').on('click', function (e, confirmed) {
    if (!confirmed) {
        e.preventDefault();
        jconfirm("Do you really ....", function (r) {
            console.log(r);
            if (r) {
                $('#delete').trigger('click', true);
            }
        });
    }
});
$('#form').submit(function (e) {
    //do your validation or whatever you need to do before submit
});

JSFiddle


1
         //You may also can use this is working for me.                
                //Call function
                confirm_boot('Delete','Are you sure? ', function(result) {
                                    console.log("Confirmed? " + result);
                                    });

                                 //define function
                            var confirm_boot = function(title, msg,callback) {
                            bootbox.confirm({
                                    title: title,
                                    message: msg,
                                    buttons: {
                                        cancel: {
                                            label: '<i class="fa fa-times"></i> Cancel',
                                        },
                                        confirm: {
                                            label: '<i class="fa fa-check"></i> Confirm',
                                        }
                                    },
                                    callback: function(result) {
                                        console.log('This was logged in the callback: ' + result); 
                                        callback(result);
                                    }
                                });

                            }

0

http://bootboxjs.com/documentation.html#bb-options

我的测试代码

                bootbox.confirm({//Konfirmasi dulu apa benar akan di hapus dari MCJ
                    message: "Remove This ...?",
                    className: 'bb-error-token-modal',
                    buttons: {
                        confirm: {
                            label: 'Yes',
                            className: 'bb-btn btn-success'
                        },
                        cancel: {
                            label: 'No',
                            className: 'bb-btn btn-danger'
                        }
                    },
                    callback: function (result) {
                        alert(result);
                            if (result === true) {
                                // result has a value
                                console.log('Jalankan Fungsi hapus ... dari List di browser & DB');
                                var table = $('#workshop_table').DataTable();
                                    table
                                        .row( $(this).parents('tr') )
                                        .remove()
                                        .draw();
                            } else {
                                // Prompt dismissed
                                console.log('Batal jalankan action');
                            }
                    }
                });

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接