-1

我看不出他的代码块有什么问题,但出于某种原因,IE7 让我很难过

$('.vote').live('click', function() {

        var post_url = base_url + 'ajax_vote' ;
        var mask_id = $(this).attr('id');
        var btn = $(this);

        $.ajax({
            type:   "POST",
            url:    post_url,
            data:   "mask_id=" + mask_id,
            }).done(function( msg ) {
                if( msg == 'pass' ){
                    get_votes(mask_id);
                    btn.replaceWith('<span class="success">Thanks for voting</span>');
                }
                else{
                    btn.replaceWith('<span class="error">You have already voted for this.</span>');
                }
            });

        return false;
    });  

谁能看到我做了什么让它抱怨。运行 jQuery 1.6.2,它位于活动灯箱中,因此 .live

4

1 回答 1

2

.live()对于初学者来说,尽可能避免。

现在解决您的问题:

// this doesn't do what you think.
.done(function( msg ) {

您应该使用..ajax()

于 2012-05-14T10:37:25.140 回答