Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript f(状态=“活动”){ 活动变量=”https://atlas-content-cdn.pixelsquid.com/stock-images/golden-soccer-ball-3yLR9z1-600.jpg"; $(this.this('img')._Javascript_Jquery - Fatal编程技术网

Javascript f(状态=“活动”){ 活动变量=”https://atlas-content-cdn.pixelsquid.com/stock-images/golden-soccer-ball-3yLR9z1-600.jpg"; $(this.this('img').

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

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); } }); }
提供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});
     });
 }