Search code examples
javascriptjqueryconfirmlivequery

livequery - confirm()


I don't get why this confirm() call fires up even though i hit "no". Can you tell me what i'm doing wrong?

$('.deleteButton').livequery('click',function(){
        if(confirm('Are you sure?')){
            return true;
        }else
        {
            return false;
        }
        return false;
    });

The HTML Markup:

<a class="smallbutton deleteButton" href="users.php?todo=delete&id=32">delete</a>

I checked and it does return false, but the page still redirects to the clicked A href value. Normally, if i return false, it shouldn't, right?


Solution

  • I apologize: it turns out i was attaching another behaviour to all anchors inside the main content container. I added an exclusion clause for deleteButton and it works fine now.

    Here is my final, working, code:

    var $tabs= $("#tabs").tabs({
            fx: {
                opacity: 'toggle'
            },
            load: function(event, ui) { 
    
                $('a', ui.panel).livequery('click',function() {
    
                    // we need to exclude the listNav buttons AND deleteButton buttons from this behavior
    
                    if($(this).parent().is(':not(".ln-letters")') && $(this).is(':not(".deleteButton")')){
    
                        $(ui.panel).load(this.href);
                        return false;
                    }
                });
            }
        });
    

    And the delete button behaviour works with a simple:

    $('.deleteButton').live('click',function(e){
        return confirm('Are you sure?');
    });