5

我有多个按钮name="angka"id="angka"

<input type="button" name="angka" id="angka" value="1" style="width:15px" onclick="insert(1)">
<input type="button" name="angka" id="angka" value="2" style="width:15px" onclick="insert(2)">
<input type="button" name="angka" id="angka" value="3" style="width:15px" onclick="insert(3)">

onLoadPage事件我尝试使用以下代码禁用它们。

document.getElementById("operator").disabled = true; 
document.getElementsByName("operator").disabled = true; 

但结果是只有第一个按钮被禁用,其他按钮仍然启用。

如何在不创建唯一名称或 ID 的情况下使用 JavaScript 禁用按钮?

解决

`var elements = document.getElementsByClassName("classname");

for (var i = 0; i < elements.length; i++) {
  elements[i].disabled =true;
}`
4

1 回答 1

10

正如@Red 所说:使用类而不是 ID

<input type="button" name="angka" class="angka" value="1" style="width:15px" onclick="insert(1)">

之后,您应该能够执行以下操作:

var elems = document.getElementsByClassName("angka");
for(var i = 0; i < elems.length; i++) {
    elems[i].disabled = true;
}

我不确定 getElementsByClassName() 是否跨浏览器,所以要小心。然而,jQuery 擅长这一点,所以你可以使用它,让你的生活更简单。

编辑

jQuery(未经测试)示例:

$('input.angka').attr('disabled','disabled');
于 2013-06-30T13:16:34.307 回答