7

当按下删除用户链接时,以下代码会弹出一个确认窗口:

<a href="delete_user.php?id=123" onclick="return confirm('Are you sure?');">Delete user</a>

在这种情况下,当按下 OK 按钮时,链接 delete_user.php?id=123 将被执行。当按下取消按钮时,什么都不会发生。

我想用 Bootbox 做同样的事情。

   <a class="alert" href="list_users.php?id=123">Delete user</a>

    <script src="bootbox.min.js"></script>
        <script>
        $(document).on("click", ".alert", function(e) {
            e.preventDefault();

        bootbox.confirm("Are you sure?", function(result) {

            if (result) {
               // What to do here?
            } else {
               // What to do here?
            }               
        });

        });
    </script>

在 if(result) 和 else 语句下做什么?

4

2 回答 2

19

这对我有用。抓住“点击”href并在有“结果”时使用它。

  <script>
        $(document).on("click", ".alert", function(e) {
            var link = $(this).attr("href"); // "get" the intended link in a var
            e.preventDefault();    
            bootbox.confirm("Are you sure?", function(result) {    
                if (result) {
                    document.location.href = link;  // if result, "set" the document location       
                }    
            });
        });
    </script>
于 2013-09-04T16:52:50.890 回答
2

这很好用!

$(".alert").on("click", function (e) {
    // Init
    var self = $(this);
    e.preventDefault();

    // Show Message        
    bootbox.confirm("Are you sure?", function (result) {
        if (result) {                
            self.off("click");
            self.click();
        }
    });
});
于 2015-08-19T17:25:11.867 回答