【问题标题】:How to tick a checkbox when another checkbox is ticked? Checkbox are an array勾选另一个复选框时如何勾选一个复选框?复选框是一个数组
【发布时间】:2019-12-17 10:54:45
【问题描述】:

我有一个从数据库查询生成的表单。生成的字段是数组name='monitor[]'id='monitor[]' 等的一部分。

如果勾选了另一个复选框,我正在尝试让 jquery 勾选一个复选框。

这是从 DB 查询生成的一些表单...

<td><input type='checkbox' id='monitor[$i]' name='monitor[$i]' value='1' /></td>
        <td><input type='checkbox' id='priority[$i]' name='priority[$i]' value='1' onclick='selectMon()'/></td>
        <td><select name='position[$i]' onchange='selectMon()'>
                <option selected='selected' disabled='true'></option>       
                <option value='support'>Support</option>
                <option value='oppose'>Oppose</option>
                <option value='watch'>Watch</option>
            </select></td>

注意 onclick 事件。

jq...

function selectMon() {
        if ($('input[name="priority[]"]').prop('checked')) {
        $('input[name="monitor[]"]').attr('checked', true);
    }
}

我尝试了 jq 的不同变体。我在方括号之前尝试过 \ \ 。我试过定义'i'(数组编号)。我已经搜索了过去几个小时。

我正在尝试这样做,以便如果检查了优先级,也将检查监视器。此外,如果选择了一个位置,监视器也会被检查。

如果不是数组[](字段的多次迭代),这似乎很简单。

我错过了什么?

【问题讨论】:

    标签: jquery html forms


    【解决方案1】:

    你需要传入索引

    onclick='selectMon($i)'
    
    function selectMon(index) {
      if ($('input[name="priority[' + index + ']"]').prop('checked')) {
        $('input[name="monitor[' + index + ']"]').attr('checked', true);
      }
    }
    

    【讨论】:

    • 非常感谢!和选择一样吗?
    猜你喜欢
    • 2021-08-28
    • 1970-01-01
    • 2021-11-23
    • 1970-01-01
    • 2014-03-12
    • 2013-11-08
    • 1970-01-01
    • 2020-09-09
    • 2018-08-10
    相关资源
    最近更新 更多