Javascript 当窗体发生更改时,防止bootstrap-3模式关闭
我试图阻止bootstrap-3模式在模式中的表单发生更改时在没有警告的情况下关闭。然而,当我听到模态触发的事件并返回false时,它将阻止模态永远关闭。这是我的密码:Javascript 当窗体发生更改时,防止bootstrap-3模式关闭,javascript,jquery,forms,modal-dialog,twitter-bootstrap-3,Javascript,Jquery,Forms,Modal Dialog,Twitter Bootstrap 3,我试图阻止bootstrap-3模式在模式中的表单发生更改时在没有警告的情况下关闭。然而,当我听到模态触发的事件并返回false时,它将阻止模态永远关闭。这是我的密码: $(function() { $('body').live('shown.bs.modal', '#quickbutton-create', function () { $(this).find('#quickbutton-create form').monitor(); }); $('
$(function() {
$('body').live('shown.bs.modal', '#quickbutton-create', function () {
$(this).find('#quickbutton-create form').monitor();
});
$('body').live('hide.bs.modal', '#quickbutton-create', function () {
if ($(this).find('#quickbutton-create form').monitor('has_changed')) {
if (!confirm('Are you sure?')) {
return false;
}
}
});
});
简而言之,在这种情况下;如何防止模态仅关闭一次。好的,我找到了它,我需要返回event.preventDefault()而不是返回false 请点击此处:
$(function() {
$('.modal').on('shown.bs.modal, loaded.bs.modal', function(e) {
// set form state
$(this).data('form-data', $(this).find('form').serialize());
});
$('.modal').on('hide.bs.modal', function(e) {
// check if the form data was changed since the modal was openened
if($(this).data('form-data') != $(this).find('form').serialize()) {
if(!confirm('you sure??')) {
e.preventDefault();
}
}
});
});