Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.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 如何在单击按钮时更改另一项的id?_Javascript_Html_Google Chrome_Google Chrome App - Fatal编程技术网

Javascript 如何在单击按钮时更改另一项的id?

Javascript 如何在单击按钮时更改另一项的id?,javascript,html,google-chrome,google-chrome-app,Javascript,Html,Google Chrome,Google Chrome App,我正在创建一个chrome应用程序,我需要更改一个圆圈的id(它与一些CSS绑定,因此id决定颜色),以使圆圈成为不同的颜色。我还需要将按钮的值更改为“锁定”。请注意,这是一个chrome应用程序。 以下是我的JavaScript: document.getElementById("clickme").addEventListener('click', function() { document.getElementById('clickme').id = 'clicked';

我正在创建一个chrome应用程序,我需要更改一个圆圈的id(它与一些CSS绑定,因此id决定颜色),以使圆圈成为不同的颜色。我还需要将按钮的值更改为“锁定”。请注意,这是一个chrome应用程序。 以下是我的JavaScript:

document.getElementById("clickme").addEventListener('click', function() {
      document.getElementById('clickme').id = 'clicked';
    }

    if (document.getElementById('clickme').id = "clicked") {
      document.getElementById('redcircle').id = 'greencircle';
      document.getElementById('clicked').value = 'Lock';
    }
和我的HTML:

<tr>
<td>Door 116</td>
<td><span><div class="circle" id="redcircle"></div></span></td>
<td><button type="button" id="clickme" value="unlock">Unlock</button></td>

116号门
解锁

您的javascript完全错误:

  • 您应该使用类而不是id来更改颜色
  • 更改元素的id不是一个好主意
您的代码应该如下所示:

    document.getElementById("clickme").addEventListener('click', function() {
        let circle = document.getElementsByClassName('circle');
        if (circle.style.color == "red") {
          circle.style.color = "green";
          document.getElementById('click').value = 'Lock';
        }
        else {
          circle.style.color = "red";
          document.getElementById('click').value = 'Unlock';
        }
});
如果你有更多的问题,不要犹豫

你应该看看:


您的javascript完全错误:

  • 您应该使用类而不是id来更改颜色
  • 更改元素的id不是一个好主意
您的代码应该如下所示:

    document.getElementById("clickme").addEventListener('click', function() {
        let circle = document.getElementsByClassName('circle');
        if (circle.style.color == "red") {
          circle.style.color = "green";
          document.getElementById('click').value = 'Lock';
        }
        else {
          circle.style.color = "red";
          document.getElementById('click').value = 'Unlock';
        }
});
如果你有更多的问题,不要犹豫

你应该看看:


if(document.getElementById('clickme').id=“clicked”)
这怎么可能是真的?如果ID是
clickme
,那么它就不会被
点击
.1)
如果(document.getElementById('clickme').ID=“clicked”)
是一个赋值,而不是比较-请使用
==
,2)如果修复,这个比较将永远不会是真的,因为它就像比较'a'和'b',3)正确的方法是使用类名,不更改id。4)将元素引用存储在变量中为此,您应该使用类而不是id。if(document.getElementById('clickme')。id=“clicked”)这怎么可能是真的?如果ID是
clickme
,那么它就不会被
点击
.1)
如果(document.getElementById('clickme').ID=“clicked”)
是一个赋值,而不是比较-请使用
==
,2)如果修复,这个比较将永远不会是真的,因为它就像比较'a'和'b',3)正确的方法是使用类名,不更改id。4)将元素引用存储在一个变量中。为此,您应该使用类而不是id(可能是()的重复项)