2010-10-05 3 views
-1

у меня есть этот JQuery код, который прекрасно работает, но изображение в конце не меняется в ЦСИ я указанный здесь:изменение изображения в jquery?

JQuery:

$(document).ready(function() { 
     $("a.vote_up").click(function(){ 
     //get the id 
     var the_id = $(this).attr('id'); 

     //the main ajax request 
     $.ajax({ 
      type: "POST", 
      data: "action=vote_up&id=" + the_id, 
      url: "ajax/votes.php", 
      success: function(msg) { 
      $("span.vote_count#"+the_id).html(msg).fadeIn(); 
// my problem is here 
      $(".vote_up#" + the_id + " img").attr("src", "img/upvoteActive.png"); 
      } 
     }); 
     }); 
    }); 

HTML-код:

<a href='#' class='vote_up' id="$id"><img src="img/uparrow.png" /></a> 

ответ

4

Не используйте класс в сочетании с ID; он является излишним, поскольку ID всегда должно быть уникальным ...

$("#" + the_id + " img").attr("src", "img/upvoteActive.png"); 

Кроме того, вы не можете использовать символ $ в атрибуте ID. Цитирую W3C on the ID attribute ...

ID и NAME лексемы должны начинаться с буквы ([A-Za-Z]) и может сопровождаться любым количеством букв, цифр ([0-9 ]), дефисы («-»), подчеркивания («_»), двоеточия («:») и периоды («.»).

+0

это еще не работает! : ((извините – getaway

+2

+1; Просто потому, что это не сработало для вас, нет необходимости проголосовать за то, что ответ по-прежнему имеет смысл. – Mottie

+1

, но он не имеет значения, он должен использовать систему комментариев, ее не ответ, его совет !!! – getaway

1

Похоже, вы используете один и тот же идентификатор несколько раз (img и count). Попробуйте сделать идентификатор более уникальным:

<a href='#' class='vote_up' id="$id_link"><img src="img/uparrow.png" /></a> 
<span class="vote_count" id="$id_count"></span> 
+0

ура его работает – getaway

+2

Вы не можете сделать что-то более уникальным. Это либо уникально ... или это не так. –

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