javascript - jQuery 引导框对话框

标签 javascript jquery

我尝试让以下代码工作

//===== Dialogs =====//
$(".table a.delete").click(function (e) {
    e.preventDefault();
    bootbox.confirm("Are you sure?", function (confirmed) {
        if (confirmed) {
            var $el = $(this);
            var $tr = $el.closest('tr');
            var url = $el.closest('table').data('remove-url');
            var id = $tr.data('id');

            $tr.fadeOut(function () {
                $el.remove();
                $.post(url, { id: id }); // do the delete on the server 
            });
        }
    });
});

引导框已显示,但 if(confirmed) 下面的代码未运行。

最佳答案

匿名 bootbox 方法中的 $(this) 并不指代您认为它所做的事情。 if(已确认)内的代码被执行,但没有匹配到任何内容。

$(".table a.delete").click(function (e) {
    var $el = $(this);
    e.preventDefault();

    bootbox.confirm("Are you sure?", function (confirmed) {
        if (confirmed) {
            var $tr = $el.closest('tr');
            ... etc
        }
    });
};

关于javascript - jQuery 引导框对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14333303/

相关文章:

javascript - JQuery:追加在元素之前

javascript - jQuery .html() 在 if 语句中不起作用

javascript - 使光标悬停区域变大

javascript - Django 中的 Ajax POST 和 GET

jquery - 删除 iframe 后将对象置于屏幕中心

javascript - 防止浏览器卡在 AJAX 请求上

javascript - 即使调整大小, Canvas 文本也始终居中吗?

javascript - 如何在导航栏中使用多个下拉菜单?

javascript - 如何应用[^0-9]正则表达式模式javascript

javascript - jquery-如何检测 child 的ID?