1

我有

<a href="test.php?id=2" class="confirm_delete">Click to proceed</a>

并遵循 javascript。当我单击上面的链接时,它会显示带有 2 个按钮的对话框。“返回错误;” 停止链接标签的默认事件。但是我需要当我单击“是,删除”时通过选择 onclicked 锚点的 href 值将我带到其他页面的功能。我试过 alert($(this).attr('id')); (因为我认为我可以使用“this.attr('href')”获取 HREF 值)但它显示“对话框”。

我如何使它工作,以便当我单击具有类名“confirm_delete”的链接时,它会显示我的对话框,如果我单击取消它会停留在页面上,否则会根据 href 值将我带到页面。

$(".confirm_delete").click(function(){
    $('<div id="dialog">Are you sure you want to delete?</div>').appendTo('body');
    $("#dialog").dialog({
        bgiframe: true, resizable: false, height:140, modal: true,
        overlay: {
            backgroundColor: '#000', opacity: 0.5
        },
        buttons: {
            'Yes, Delete all items in recycle bin': function() {
                $(this).dialog('close');
                $(this).remove();
                alert($(this).attr('id'));
            },
            Cancel: function() {
                $(this).dialog('close');
                $(this).remove();
            }
        }
    });
    return false;
    });

谢谢你。

4

3 回答 3

0

首先:尽量不要在类名中使用下划线。我在某处读过它们可能会导致问题...

嗯,这里:

$('a.confirm-delete').click( function(event) {
    if( !confirm('are you sure you want to go?') ) return false;
});

在这里,我使用了 javascript 确认对话框。您可以轻松地将其替换为 jquery 模式对话框。

jrh

于 2009-06-09T08:41:01.267 回答
0

好的,我可以通过var url = $(this).attr('href');检索 HREF 的值 就在 $(".confirm_delete").click(function(){ 行之后。它给了我 "test.php?id=123" 唯一剩下的就是创建/检索完整的 url 并重定向到该 url。

谢谢

于 2009-06-09T08:45:12.130 回答
0

这应该可以解决问题:

$(".confirm_delete").click(function(){
       var $delete = $(this);
       ...
        $("#dialog").dialog({
                ...
                buttons: {
                        'Yes, Delete all items in recycle bin': function() {
                                $(this).dialog('close');
                                $(this).remove();
                                alert($delete.attr('id'));
                        }
                }
        });
        return false;
});
于 2009-06-09T08:49:23.887 回答