2015-12-17 7 views
0

Я хочу изменить src файла изображения. Пробовал использовать ниже с помощью переменной, но на самом деле это не меняет. Где я допустил ошибку при использовании переменной?Использование переменной в селекторе jquery

JQuery

var p2begen = "416"; 
$("[id=i'" + p2begen + "']").attr("src", "check.png"); 

HTML

<img src="nocheck.png" id="i416" \> 
+0

вы забываете о '#' в '$ («[ID = # я '» + p2begen + "']") ' – BenG

+0

С помощью этого кода вы изменяете id' i'416'', удаляете их. Также, как утверждают другие, правильный способ выбора ID - это # ​​'$ ('# element_id')' –

ответ

3

Чтобы вставить ссылку на идентификатор в JQuery вам нужно добавить #. См. here в документах jquery. Важно отметить, что идентификаторы должны быть уникальными, но вы можете использовать класс на столько элементов, сколько хотите.

var p2begen = "416"; 
$("#i" + p2begen).attr("src", "check.png"); 

Если вы хотите использовать классы вместо ваш код должен выглядеть следующим образом:

<img src="nocheck.png" class="i416" \> 

var p2begen = "416"; 
$(".i" + p2begen).attr("src", "check.png"); 
+0

его 'id' не' class'. – BenG

+0

вы правы, хороший крик –

+0

Вот сделка, я хочу, чтобы это применялось ко всем div, имеющим один и тот же идентификатор. Так это сделает это? – user198989

1

добавить # на старте.

var p2begen = "416"; 
$("#i" + p2begen).attr("src", "check.png"); 

если вы хотите придерживаться селектора атрибутов, используйте: -

var p2begen = "416"; 
$("[id='#i" + p2begen + "']").attr("src", "check.png"); 

путем добавления # и перемещение ' назад 2 места.

1

Самый простой способ сделать это состоит в использовании селектора для идентификаторами, и ваш селектор будет выглядеть следующим образом:

var p2begen = "416"; 
$('#i' + p2begen).attr("src", "check.png"); 
Смежные вопросы