3

I am new to alertify.js. What I am trying to do is, when the user cicks on a link, the browser should show confirmation box. If the user clicks of then go to the next page. If the user clicks cancel then stay on the same page. Is it possible to do this using alertify.js?

Here is my HTML code.

<a href="index.php" class="alert">Logout</a>

Here is my JavaScript code.

$(".alert").on('click', function(){
    alertify.confirm("Are you sure?", function (e) {
        if (e) {
            return true;
        } else {
            return false;
        }
    });
});

But the problem is that whenever I click on the link, I go to the index.php page before clicking on the confirm.

4

2 に答える 2

8

問題は、コードを待機させることができないことです。したがって、元のクリックをキャンセルしてから、コードを呼び出して新しいページに移動する必要があります。

$(".alert").on('click', function(e){
    e.preventDefault();
    var href = this.href;
    alertify.confirm("Are you sure?", function (e) {
        if (e) {
            window.location.href = href;
        }
    });
});
于 2013-05-14T14:12:53.800 に答える
-1
$(".alert").on('click', function(){
    e.preventDefault();
    alertify.confirm("Are you sure?", function (e) {
        if (e) {
            //window.location...redirect
        } else {
            //do something
        }
    });
});

true または false を返す必要はありません... if ステートメントで既にチェックしています

于 2013-05-14T14:12:11.703 に答える