簡體   English   中英

如何根據Javascript中的“類”選擇器檢索onclick事件的href值?

[英]how to retrieve href value for an onclick event based on “class” selector in Javascript?

我有

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

並遵循javascript。 當我單擊上面的鏈接時,它會顯示帶有 2 個按鈕的對話框。 “返回假;” 停止鏈接標簽的默認事件。 但是我需要這樣的功能:當我單擊“是,刪除”時,通過選擇點擊錨點的 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;
    });

謝謝你。

首先:盡量不要在類名中使用下划線。 我在某處讀過它們可能會導致問題...

嗯,在這里:

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

在這里,我使用了 javascript 確認對話框。 您可以輕松地將其替換為 jquery 模式對話框。

jrh

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

謝謝

這應該可以解決問題:

$(".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;
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM