引导确认不考虑选项

Bootstrap-confirmation not respecting options

本文关键字:选项 不考虑 确认      更新时间:2023-09-26

只需将引导程序弹出窗口的引导确认扩展添加到项目的某些按钮即可。我遇到了选项未得到尊重的问题。我试图让弹出窗口作为单例工作,并在用户单击它们外部时关闭 singletondata-popout选项,分别 - 两者都设置为 true。我也没有看到任何我定义的回调行为发生。

我在 HTML 标记和函数中定义了选项,但都不起作用。仍然得到多个盒子,他们没有像预期的那样关闭。

我的 JS 在所有其他库之后加载,并且位于页脚的custom.js文件中。

JS如下:

$(function() {
    $('body').confirmation({
        selector: '[data-toggle="confirmation"]',
        singleton: true,
        popout: true
    });
    $('.confirmation-callback').confirmation({
        onConfirm: function() { alert('confirm') },
        onCancel: function() { alert('cancel') }
    });
});

在我的 HTML 中的按钮上实现的框示例如下:

<a class="btn btn-danger" data-toggle="confirmation" data-singleton="true" data-popout="true"><em class="fa fa-trash"></em></a>

任何指示将不胜感激。我什至将bootstrap-confirmation.js文件本身中的默认选项更改为我想要的选项,但仍然没有运气。

事实证明,我需要重新安排几件事才能使其正常工作。我已经保留了last_clicked_id等内容,因为我需要添加它以获得我刚刚点击的内容的id值。

// Product removal popup logic
var last_clicked_id = null;
var last_clicked_product = null;
$('.btn.btn-danger.btn-confirm').click(function () {
    last_clicked_id = $(this).data("id");
    last_clicked_product = $(this).data("product");
});
$('.btn.btn-danger.btn-confirm').confirmation({
    singleton: true,
    popout: true,
    onConfirm: function () {
        alert("DEBUG: Delete confirmed for id : " + last_clicked_product);
        // TODO: Add AJAX to wipe entry and refresh page
    },
    onCancel: function () {
        alert("DEBUG: Delete canceled for id : " + last_clicked_product);
    }
});
我在回调逻辑

上领先一步,但回调逻辑没有被执行。只需将其添加到onConfirm:并在.confirmation()函数中onCancel:键值即可修复。那里有点RTFM时刻,但不幸的是,这在文档中不是很清楚。