【问题标题】:Disable Or Enable Checkbox Array Using Javascript使用 Javascript 禁用或启用复选框数组
【发布时间】:2014-06-22 19:28:39
【问题描述】:

我有以下代码:

<html>
    <head>
    </head>
    <body>
        <table>
            <tr>
                <td>
                    <input type="checkbox" name="ck[]" value="sakit">
                </td>
                <td>
                    <input type="checkbox" name="ck[]" value="izin">
                </td>
            </tr>
            <tr>
                <td>
                    <input type="checkbox" name="ck[]" value="sakit">
                </td>
                <td>
                    <input type="checkbox" name="ck[]" value="izin">
                </td>
            </tr>
        </table>
    </body>
</html>

如何禁用第一个 tr 元素中的复选框而不更改第二个 tr,否则我可以禁用第二个 tr 元素中的复选框而不更改第一个 tr?

【问题讨论】:

  • 您想在 HTML 中执行此操作吗?还是这个动态标记,需要在JS中控制?
  • 欢迎来到 Stack Overflow。解释一下,为什么你的问题被否决了:这个问题很容易解决,到目前为止已经解决了数百万次,问这样的问题,表明绝对没有尝试自己解决这个问题。这是一个问答网站,我们更喜欢问:“我有这个问题,我试过这个,这个和那个,但我失败了。”。诸如“我有这个问题,请帮我解决”之类的问题很可能会被否决。顺便说一句:标记您的问题文本,右键单击并选择 Search Google... 给了我 三个 链接解决方案!我花了 5 秒!

标签: javascript html checkbox


【解决方案1】:

您可以使用 document.querySelector 使用 css 选择器来定位元素。

针对第一个&lt;tr&gt;

document.querySelector('tr:first-child input').disabled = true;

或针对第二个&lt;tr&gt;

document.querySelector('tr:last-child input').disabled = true;

【讨论】:

  • +1 提醒我们,我们可以在纯 Javascript 中做真的很多,而不需要调用 jQuery/Zepto!
  • 谢谢,但是如果我有四个 tr 元素呢?我可以禁用第三个 tr 元素中的复选框吗?
【解决方案2】:

您可以简单地禁用复选框:CheckboxObject.disabled = true;

【讨论】:

  • 这真的是你的标记吗?我问是因为你有欺骗值。
  • @AdrianLynch 你是什么意思? O_O
  • 第 1 行中的值与第 2 行中的值相同。只是感觉它不是真正的标记。
  • @AdrianLynch 啊,你的意思是 OP =D 的问题
  • 哦,我会在其他人之前问...你可以使用 jQuery 吗? :D
【解决方案3】:

在 HTML 中你所要做的就是:

<input type="checkbox" name="ck[]" value="sakit" disabled>

在 JS 中你会这样做:

 var fields = document.getElementsByTagName("input");
    for (var i = 0; i < fields.length; i++) {
        if (fields[i].type == "checkbox")
        fields[i].disabled = true;
    }

这将禁用页面上的第一个复选框。如果您需要不同的东西,请告诉我。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-25
    • 2017-01-20
    • 2015-11-12
    • 2020-11-14
    • 1970-01-01
    • 2012-08-12
    • 1970-01-01
    相关资源
    最近更新 更多