2012-05-14 4 views
-1

я не могу увидеть, что проблема с его куском кода, но по какой-то причине IE7 дает мне трудное время о егоJQuery и 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

+1

Определите, что «даю мне тяжелое время» – PeeHaa

+0

Извините, это просто убивает остальную часть скрипта, и ничего больше не будет работать. – Brob

+0

Вы получаете какие-либо ошибки в консоли? – Mathletics

ответ

2

Для начала избегайте .live(), если это возможно.

Теперь для вашей проблемы:

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

Вы должны использовать success callback из .ajax().

+0

Спасибо за полезную обратную связь. Изменил его на успех ajax, и он работал как сон. – Brob

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