Javascript f(状态=“活动”){ 活动变量=”https://atlas-content-cdn.pixelsquid.com/stock-images/golden-soccer-ball-3yLR9z1-600.jpg"; $(this.this('img').
f(状态=“活动”){ 活动变量=”https://atlas-content-cdn.pixelsquid.com/stock-images/golden-soccer-ball-3yLR9z1-600.jpg"; $(this.this('img').attr({“src”:Active}); }否则{ var紧急情况=”https://upload.wikimedia.org/wikipedia/commons/4/47/PNG_transparency_demonstration_1.png"; $(this.sibbines('img').attr(“src”,Emergency); } }); }Javascript f(状态=“活动”){ 活动变量=”https://atlas-content-cdn.pixelsquid.com/stock-images/golden-soccer-ball-3yLR9z1-600.jpg"; $(this.this('img').,javascript,jquery,Javascript,Jquery,f(状态=“活动”){ 活动变量=”https://atlas-content-cdn.pixelsquid.com/stock-images/golden-soccer-ball-3yLR9z1-600.jpg"; $(this.this('img').attr({“src”:Active}); }否则{ var紧急情况=”https://upload.wikimedia.org/wikipedia/commons/4/47/PNG_transparency_demonstration_1.p
提供html代码here@DevsiOdedra一秒钟检查一下$(这个)我想它是窗口吗?试一下。查找('img'),而不是最近的('img')@Przeklin你必须使用
$(这个)。下一个('img')。attr('src',Emergency)代码>回答很好,只是一个注释,应该是$(x)。下一步('img')
,因为图像是中标签的兄弟。每个@CarstenLøvboAndersen tusind-tak:)我开始回答时在代码中没有看到:)没问题,我们在这里是为了互相帮助。@CarstenLøvboAndersen它可以工作,但不是我想要的,因为例如label1的值为“活动”,label2的值为“待机”,如果调用ChangeImage(),则它将为所有对象设置为活动labels@balexandre谢谢,我找到了解决方案,只需将$(x).next('img').attr(“src”,url)更改为$('img[data id=“'+I+'”).attr(“src”,Active);它在最后工作感谢再一次的帮助它对我不起作用,后调用函数不添加src attr:\它工作了,但不是我想要的,因为它设置了图像依赖于第一个标签到另一个标签。例如,我的第一个标签的值为“Active”,第二个标签的值为“Standby”,它将Active img同时设置为这两个值。你能提供你的示例ajax数据或HTML模板,以便我检查一下。你现在能看一下吗?
function ChangeImage() {
let labels = $('label[data-id]');
$.each(labels, function (i, x) {
var states = $(x).text();
console.log(states);
if (states == "Active") {
var Active = "Images/kafle/zebatakActive.svg";
$(this).closest('img').attr("src", Active);
} else if (states == "Standby") {
var Standby = "Images/kafle/kafle_zebatka-01.svg"
$(this).closest('img').attr("src", Standby);
} else if (states == "Error") {
var error = "Images/kafle/kafle_zebatka-01.svg";
$(this).closest('img').attr("src", error);
} else if (states == "Setting") {
var Settings = "Images/kafel/kafle_zebatka-03.svg"
$(this).closest('img').attr("src", Settings);
} else {
var Emergency = "Images/kafle/kafle_status-yel-yel.svg";
$(this).closest('img').attr("src", Emergency);
}
});
}
function getState() {
try {
$.ajax({
type: "POST",
url: "Default.aspx/jsrequest",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
$("#ajax").empty();
$.each(data, function () {
$("#ajax").append('<div id="ajaxcontent"></div>');
$("#ajaxcontent").addClass("ajaxcontent");
$.each(this, function (k,v) {
$("#ajaxcontent").append('<div class="view">' + ' <label id="IdOfMachine">' + v.MachineId + '</label>'
+ '<label class="MachineState" name="Values" data-id= "' + v.MachineId + ' " > ' + v.CurrentStatus + '</label > '
+ '<img class="ChangeImg" data-id="' + v.MachineId + '"> ' + '</img > '
+ '<label id="MachineName">' + v.MachineName + '</label>' + '</div>');
});
});
},
error: function (response) {
alert("cos źle")
}
});
} catch (err) { }
}
public static List<StateOfMachine> jsrequest()
{
List<StateOfMachine> MachineState = new List<StateOfMachine>();
string DBInfo = @"Data Source=STACJA45;Initial Catalog=AutoRefresh;Integrated Security=True;Connect Timeout=30;Encrypt=False;TrustServerCertificate=False;ApplicationIntent=ReadWrite;MultiSubnetFailover=False";
string sqlrequest = "Select MachineID,CurrentStatus,MachineName from MachineStates";
SqlConnection connection = new SqlConnection(DBInfo);
SqlCommand command = new SqlCommand(sqlrequest, connection);
connection.Open();
SqlDataReader DataReader = command.ExecuteReader();
while (DataReader.Read()) {
StateOfMachine machines = new StateOfMachine();
machines.MachineId = DataReader["MachineID"].ToString();
machines.MachineName = DataReader["MachineName"].ToString();
machines.CurrentStatus = DataReader["CurrentStatus"].ToString();
MachineState.Add(machines);
}
DataReader.Close();
command.Dispose();
connection.Close();
return MachineState;
}
function ChangeImage() {
var labels = $('label[data-id]');
$.each(labels, function (i, x) {
var url = '';
var path = 'Images/kafle';
var state = $(x).text();
switch(state) {
case "Active": url = path + "/zebatakActive.svg"; break;
case "Standby": url = path + "/kafle_zebatka-01.svg"; break;
case "Error": url = path + "/kafle_zebatka-01.svg"; break;
case "Setting": url = path + "/kafle_zebatka-03.svg"; break;
default: url = path + "/kafle_status-yel-yel.svg"; break;
}
$('img[data-id="' + state + '"]').attr("src", url);
console.log({path, state, url});
});
}