2015-09-28 3 views
-2

HTML:найти и заменить SRC изображения по щелчку

<div class="checkbox" rel="1" id="fr2"><img src="images/checkbox_off.png" class="ckbox" width="16" height="16">1917</div> 
<div class="checkbox" rel="2" id="fr2"><img src="images/checkbox_off.png" class="ckbox" width="16" height="16">1957</div> 
<div class="checkbox" rel="3" id="fr2"><img src="images/checkbox_off.png" class="ckbox" width="16" height="16">1997</div> 
<input type="text" name="fr2_val" id="fr2_val" value=""> 

по щелчку на одном из этого флажка DIV я хочу изменить образ этого щелкнул ONW:

Вот мой JQuery:

$('.checkbox').click(function() { 
      var wert = $(this).attr('rel'); 
      var id = $(this).attr('id'); 
      $('#'+id+'_val').val(wert); 

      $(this).find('.ckbox').src.replace("_off", "_on"); 
     }) 

Но это не работает. Как изменить скрещенное изображение src? И как наилучшим решением для сброса других?

спасибо за помощь

наилучших пожеланиями томас

+1

Я хотел бы также отметить, что ваш 'id's должен быть уникальным. – Pustur

ответ

3

Вы должны присвоенным измененный ЦСИ обратно флажок, вы получите строку с помощью $(this).find('.ckbox').src и изменить его обыкновение изменять СРК фактического флажка.

chkbox = $(this).find('.ckbox'); 
chkbox.attr('src', chkbox.prop('src').replace("_off", "_on")); 

или с использованием объекта DOM вместо объекта jQuery. Вы можете напрямую получить доступ к src и изменить его.

chkbox = $(this).find('.ckbox')[0]; 
chkbox.src = chkbox.src.replace("_off", "_on"); 

Кроме этого я не мог понять, почему вы делаете идентификатор динамически для ввода с идентификатором fr2_val

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