我在使用循环更改多个图像的来源时遇到问题。我有几个图像,每个图像都有自己的id,循环遍历这些ID。下面是我的代码的摘录。
使用类似于第3行的固定ID,但是当使用第4行中的变量时,它不起作用。虽然imgName是我在第3行中使用的(我用警报检查过)。
for (var i in data.users) {
var imgName = "\"#" + data.users[i].name + "\"";
$("#Licht_Wohnzimmer").attr('src',"Img\\Pic_" + data.users[i].status + ".gif");
//$(imgName).attr('src',"Img\\Pic_" + data.users[i].status + ".gif");
//alert(imgName);
}
任何人都可以告诉我我的问题是什么吗?
答案 0 :(得分:0)
假设data.users[i].name
等于字符串foobar
,
var imgName = "\"#" + data.users[i].name + "\"";
将导致字符串"#foobar"
(双引号是字符串本身的一部分)。
因此$(imgName)
将被解析为$("\"#foobar\"")
:必须删除两个周围的双引号(即不要添加):
var imgName = "#" + data.users[i].name;
答案 1 :(得分:0)
var imgName = data.users[i].name;
$('#' + imgName).attr('src',"Img\\Pic_" + data.users[i].status + ".gif");
答案 2 :(得分:0)
您获取图像的名称,然后更改src属性,如下所示:
for (var i in data.users) {
var imgName = data.users[i].name;
imgName.src = "Img\\Pic_" + data.users[i].status + ".gif";
}