转换为Bootbox确认

时间:2013-06-07 15:00:10

标签: javascript jquery twitter-bootstrap bootbox

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

<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语句下做什么?

2 个答案:

答案 0 :(得分:19)

这对我有用。抓住&#34;点击&#34; href并在你有&#34;结果&#34;时使用它。

  <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>

答案 1 :(得分: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();
        }
    });
});