Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.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_Button_Checkbox_Getelementbyid - Fatal编程技术网

Javascript 隐藏按钮,直到选中复选框,不带ID

Javascript 隐藏按钮,直到选中复选框,不带ID,javascript,button,checkbox,getelementbyid,Javascript,Button,Checkbox,Getelementbyid,我需要隐藏一个按钮,直到点击一个复选框,但是我正在进入其他人的代码,他们使用的标记库没有在按钮标记中定义ID。以下是我所拥有的: 按钮代码: <html:button name="Next" value="BTN.NEXT" styleClass="button" localeCd="<%= localeCd %>" onClick='Submit("Next")'/> } 我可以让它在一个单独的页面上工作,但是它所在的页面不允许按钮有ID,所以每次都会崩溃。有什么建议

我需要隐藏一个按钮,直到点击一个复选框,但是我正在进入其他人的代码,他们使用的标记库没有在按钮标记中定义ID。以下是我所拥有的:

按钮代码:

<html:button name="Next" value="BTN.NEXT" styleClass="button" localeCd="<%= localeCd %>" onClick='Submit("Next")'/>
}


我可以让它在一个单独的页面上工作,但是它所在的页面不允许按钮有ID,所以每次都会崩溃。有什么建议吗?

请使用document.querySelector,而不是使用document.getElementById查找按钮

例如,如果页面上有一个按钮,其名称属性值为“下一步”:

document.querySelector('button[name=“Next”]”)

有更好的方法可以做到这一点,比如监听点击事件等等。。。但是,要简单地修改代码,请参见以下内容(注意:假设这是唯一名为“Next”的元素):

并将
onclick=“checkFed(this,'myNext')”
更改为:

onclick=“checkFed(this,'Next')”

并向按钮添加
disabled=“true”
,使其初始状态为disabled


…还要注意的是,这实际上并没有像标题所要求的那样隐藏它,而是禁用它,就像问题的内容似乎在问一样。

我可能遗漏了一些东西,但你的按钮似乎没有id。嘿,你需要用“javascript”标记这样的问题,以获得正确类型的帮助,而不是“java”。我还建议使用第三方站点,如jsfiddle.net,将html、css和javascript与服务器端代码隔离开来。通常在这样做的过程中,您可以简化您的问题,并在更简单的环境中自己解决问题。如果没有,其他人将更容易解决。好吧,这非常有效,现在他们想要在页面的顶部和底部都有一个按钮。代码使用顶部按钮,但不使用底部按钮。我假设我需要某种方式让脚本遍历所有元素,而不仅仅是上面的元素。
<input type="checkbox" name="fedCheck" onclick="checkFed(this, 'myNext')" value="y" />
function checkFed(ele, id) {
x = document.getElementById(id);
if (ele.checked == true) x.disabled = false;
else x.disabled = true;
function checkFed(ele, name) {
    x = document.getElementsByName(name)[0];
    x.disabled = !x.disabled
}