我已经实现了bootbox for alert。我面临着两个无法解决的问题。 当我点击一个按钮时,会打开一个启动箱确认,并带有两个按钮“是”和“否”按钮。但是当我点击右上角的关闭按钮时,我想这个盒子将被关闭,但它会触发取消按钮。另一个问题是当点击“Esc”按钮时,它也会触发关闭按钮。任何人都可以告诉我如何限制这个问题。
$(function() {
$('.alert').on('click', function() {
bootbox.confirm({
message: "This is a confirm with custom button text and color! Do you like it?",
buttons: {
confirm: {
label: 'Yes',
className: 'btn btn-primary'
},
cancel: {
label: 'No',
className: 'btn btn-default'
}
},
callback: function(result) {
if (result == true) {
bootbox.prompt({
title: "This is a prompt with a set of checkbox inputs!",
className: 'box 2',
callback: function(result) {
console.log(result);
}
});
} else if (result == false) {
alert('you have clicked No Button');
} else {
alert("There is some Error");
}
console.log('This was logged in the callback: ' + result);
}
});
})
})
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap3-dialog/1.34.9/css/bootstrap-dialog.min.css" rel="stylesheet" type="text/css" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap3-dialog/1.34.9/js/bootstrap-dialog.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/bootbox.js/4.4.0/bootbox.min.js"></script>
<p>Content here. <a class="alert" href=#>Alert!</a></p>
答案 0 :(得分:0)
<script>
$(function() {
$('.alert').on('click', function() {
var onSubmit = function() {
//Process form data
alert("Submit");
dialog.modal('hide');
}
var onCancel = function()
{
bootbox.dialog({
message: '<input class="form-control input-sm" id="inputsm" type="text">',
title: "Custom label",
onEscape: true,
buttons: {
main: {
label: "Save",
className: "btn-primary",
callback: function() {
console.log("Save");
}
}
}
})
}
var dialog = bootbox.dialog({
message: "Perform this task?",
onEscape: true,
buttons: {
cancel: {
label: 'No',
className: 'btn-default',
callback: onCancel
},
confirm: {
label: 'Yes',
className: 'btn-primary',
callback: onSubmit // Handles OK button
}
}
});
})
})
</script>