更改图像src,将全部更改为一个图像jquery
我尝试在特定条件下更改所有图像的src值。但它会将所有图像值都更改为第一个图像值,一旦更改了第一个图像值,其余图像值与第一个图像值相同更改图像src,将全部更改为一个图像jquery,jquery,html,Jquery,Html,我尝试在特定条件下更改所有图像的src值。但它会将所有图像值都更改为第一个图像值,一旦更改了第一个图像值,其余图像值与第一个图像值相同 var checkedValue = $('.attribute:checked').val(); if (checkedValue == 332) { $(".changepicture").each(function(){ //get parent var parent = $(this).parent(); var
var checkedValue = $('.attribute:checked').val();
if (checkedValue == 332)
{
$(".changepicture").each(function(){
//get parent
var parent = $(this).parent();
var pictureValue = $(parent).find('.pictureinput').val();
pictureValue = pictureValue.replace("Hero", "00");
$(this).attr("src", pictureValue );
})
}
HTML代码:输入:
<label>
<input data-parent=“1” class="attribute" type="checkbox" value=“332” />
CHANGE
</label>
此代码适用于第一张图片,但也将src中的所有图片替换为第一张图片中的hero值。例如:将第一个英雄_1更改为00_1,但所有其他图片(英雄_2、英雄_3…)都将更改为00_1。
我尽可能多地解释了,如果有什么不清楚的地方,我就来解释。
谢谢。您应该循环浏览每个图像,而不是第一个图像
var checkedValue = $('.attribute:checked').val();
if (checkedValue == 332)
{
$(".changepicture").each(function(){
//get parent
var parent = $(this).parent();
var pictureValue = $(parent).find('.pictureinput').val();
pictureValue = pictureValue.replace("Hero", "00");
$(this).attr("src", pictureValue );
})
}
问题是,您只获得第一个图像的值,并且在任何地方都使用它
var checkedValue = $('.attribute:checked').val();
var pictureValue = $('.pictureinput').val(); // <--- HERE
if (checkedValue == 332)
{
pictureValue = pictureValue.replace("Hero", "00");
$(".changepicture").attr("src", “pictureValue”);
}
我已经编辑了答案。请再次尝试@EvikGhazarianHappy以帮助:)那么我如何将其分配给image src?这是一行
el.nextSibling.src=pictureValue
var checkedValue = $('.attribute:checked').val();
var pictureValue = $('.pictureinput').val(); // <--- HERE
if (checkedValue == 332)
{
pictureValue = pictureValue.replace("Hero", "00");
$(".changepicture").attr("src", “pictureValue”);
}
var checkedValue = $('.attribute:checked').val();
if (checkedValue == 332)
{
$('.pictureinput').each(function(idx, el) {
pictureValue = el.value; // <-- now pictureValue will be different for each image
pictureValue = pictureValue.replace("Hero", "00");
el.nextSibling.src = pictureValue;
}
}