按名称找到 table 中的 Un/Check 复选框(table 值)

Un/Check checkbox in table found by name (table value)

我想选中或取消选中属于 tr 的复选框。

从这个 tr 我已经有了名称作为信息。

我需要 "Uncheck checkbox on tr where tr.name = $name"

<tr>
    <td id="klauselname">
            002  
    </td>
    <td>
            50591
    </td>
    <td>
            Text
    </td>
    <td id="td-center">
            <input class="check-box" disabled="disabled" type="checkbox" />
    </td>

</tr>
<tr>
    <td id="klauselname">
            003  
    </td>
    <td>
            50601
    </td>
    <td>
            Text
    </td>
    <td id="td-center">
            <input class="check-box" disabled="disabled" type="checkbox" />
    </td>
</tr>

你有什么想法吗? o.o

首先,正如其他人所指出的,您 DOM 中的 ID 应该始终是唯一的。您可以使用 类 或其他属性进行批量操作,但不能使用 ID。

所以让我们像这样清除重复的 ID,同时在您的复选框中添加一些 ID。

<tr>
 <td id="myUniqueID_1">002</td>
 <td>50591</td>
 <td>Text</td>
 <td class="td-center" id="myUniqueID_3">
   <input id='myCheckBox_1' class="check-box" disabled="disabled" type="checkbox" />
 </td>
</tr>
<tr>
 <td id="myUniqueID_2">003</td>
 <td>50601</td>
 <td>Text</td>
 <td class="td-center" id="myUniqueID_4">
   <input id='myCheckBox_2' class="check-box" disabled="disabled" type="checkbox" />
 </td>
</tr>

现在我们可以添加一个函数来处理 Checkbox 的变化。我们将使用选中的 属性 并将其更改为 falsetrue 取决于我们的需要。

<script>
  function changeState(elID){
    var myCheckBoxStatus = document.getElementById(elID).checked;

    if(myCheckBoxStatus)
      document.getElementById(elID).checked = false;
    else
      document.getElementById(elID).checked = true;
  }
</script>

让我们也放置一个按钮来测试它

<button onclick='changeState("myCheckBox_2");'>Toggle</button>