2012-01-03 2 views
0

Как только вы нажмете на голосование, он станет включенным, его можно отключить, щелкнув по дате голосования. Как сделать так, чтобы, если я нажму кнопку «Включено», она станет отключенной.Как отключить/включить кнопку/ссылку с jQuery?

$("a.vote_down").click(function() { 
    //get the id 
    the_id = $(this).attr('id'); 

    //the main ajax request 
    $.ajax({ 
     type: "POST", 
     data: "action=vote_down&id="+$(this).attr("id"), 
     url: "votes.php", 
     success: function(msg) { 
      $(".vote_down").addClass("active"); 
      $(".vote_up").removeClass("active"); 
      $("span#votes_count").html(msg); 
     } 
    }); 
}); 

Одним из звеньев:

<a href='javascript:;' class='vote_up<?php if($liked["points"]=="1") echo " active";?>' id='<?php echo $id; ?>'>Vote Up</a> 

ответ

2

Попробуйте использовать это в качестве живого события щелчка на active класса. Добавлена ​​абстракция.

$("a.vote_down.active").live("click", function(e) { 
    Vote($(this).attr('id'), false); 
}); 

$("a.vote_up.active").live("click", function(e) { 
    Vote($(this).attr('id'), true); 
}); 

function Vote(id, value) { 
    //the main ajax request 
    var action = value ? "vote_up" : "vote_down" 
    $.ajax({ 
     type: "POST", 
     data: "action=" + action + "&id=" + id, 
     url: "votes.php", 
     success: function(msg) { 
      $(".vote_down").toggleClass("active", value); 
      $(".vote_up").toggleClass("active", !value); 
      $("span#votes_count").html(msg); 
     } 
    }); 
} 

рабочий пример: http://jsfiddle.net/hunter/XQfgU/ (минус AJAX)

Смежные вопросы