JavaScript取消选中具有动态ID的复选框

标签 javascript jquery checkbox

<分区>

我在使用动态 ID 取消选中复选框时遇到问题。

它们都被选中,但我需要设置如果单击一个则另一个被禁用 这是例子:

<input id="value_Ture_do_30_15_0" class="rnr-checkbox" name="value_Ture_do_30_15[]" value="1" checked="checked" type="checkbox">

<input id="value_Ture_preko_30_15_0" class="rnr-checkbox" name="value_Ture_preko_30_15[]" value="1" checked="checked" type="checkbox">

我试过这样的:

$("[id^='value_Ture_do_30']").checked = false

还有这个:

$(function () {
    $("[id^='value_Ture_do_30']).click(function (event) {
        if (event.target.checked) {
            $("[id^='value_Ture_preko_30']").find('input').removeAttr('checked');
        }
    });
    $("[id^='value_Ture_preko_30']").click(function (event) {
        if (event.target.checked) {
            $("[id^='value_Ture_do_30']").find('input').removeAttr('checked');
        }
    });
});

此外,此解决方案对我不起作用: Setting "checked" for a checkbox with jQuery? 但它不起作用。 如果你能帮助我 谢谢

这样解决的:

$("[id^='value_Ture']").click(function() {
    var $this = $(this), 
        wasChecked = $this.attr("checked") === "checked";
    $("[id^='value_Ture']:checked").removeAttr("checked");
    if (wasChecked) {
        $this.attr("checked", "checked");
    }
});

最佳答案

你可以使用 jQuery prop()

$("[id^='value_Ture_do_30']").prop('checked', false);

建议

为什么不使用 radio ?

关于JavaScript取消选中具有动态ID的复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31025260/

相关文章:

javascript - 具有未知行数的数据表服务器端处理

jquery - 用边框制作多个div的单个边框

javascript - 优化 Internet Explorer 11 的滚动速度

javascript - 如何获取jQuery元素的自定义值?

javascript - 通过Jquery查找表中没有复选框的所有行

php - 如何在 PHP 生成的脚本中调用 javascript 函数?

javascript - 如何使用 selenium webdriver 跟踪选项卡更新

c# - 在 Windows Phone 中,如何在询问用户后更改复选框状态?

python - 如何增加 Checkbutton 大小 - Tkinter

javascript - 左右移动 SVG 组