jQuery:点击链接,确认,然后转到某位置

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (48)

我有这样的链接。

<a href="delete.php?id=1" class="delete">Delete</a>

如果用户点击它。确认应该弹出,然后只有当用户单击是,它应该转到实际的url。

我知道这可以防止默认行为。

    function show_confirm()
    {
    var r=confirm("Are you sure you want to delete?");
    if (r==true)   {  **//what to do here?!!** }

    }    


    $('.delete').click(function(event) {
    event.preventDefault();
    show_confirm()
    });

但是,我如何继续链接或确认后发送ajax到该链接

提问于
用户回答回答于

你可以在点击的情况下做到这一切:

$('.delete').click(function(event) {
    event.preventDefault();
    var r=confirm("Are you sure you want to delete?");
    if (r==true)   {  
       window.location = $(this).attr('href');
    }

});

或者你可以通过将clicked元素传递给函数来完成:

function show_confirm(obj){
    var r=confirm("Are you sure you want to delete?");
    if (r==true)  
       window.location = obj.attr('href');
}    
$('.delete').click(function(event) {
    event.preventDefault();
    show_confirm($(this));

});
用户回答回答于

我花了一段时间才弄清楚这件事,所以我想我应该把我的解决方案发出来。

$('.delete').click(function(e){
    if(confirm('Are you sure?')){
        // The user pressed OK
        // Do nothing, the link will continue to be opened normally
    } else {
        // The user pressed Cancel, so prevent the link from opening
        e.preventDefault();
    }
}

扫码关注云+社区

领取腾讯云代金券