Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JQuery复选框检查_Jquery_Html_Checkbox - Fatal编程技术网

JQuery复选框检查

JQuery复选框检查,jquery,html,checkbox,Jquery,Html,Checkbox,假设我有三个复选框,一,二,三。现在我想,如果我点击复选框一,那么复选框二和三将取消选中 另一个例子:如果我单击复选框二,那么复选框一和三将取消选中 如果我单击复选框三,那么复选框一和二将取消选中 HTML 回答第1部分:这正是单选按钮的设计目的,默认情况下它们具有这种行为 回答第2部分:单击功能应如下所示: $(".check").click(function(){ $(".check").attr("checked", false); $(this).attr("check

假设我有三个复选框,一,二,三。现在我想,如果我点击复选框一,那么复选框二和三将取消选中

另一个例子:如果我单击复选框二,那么复选框一和三将取消选中

如果我单击复选框三,那么复选框一和二将取消选中

HTML
回答第1部分:这正是单选按钮的设计目的,默认情况下它们具有这种行为

回答第2部分:单击功能应如下所示:

$(".check").click(function(){

    $(".check").attr("checked", false);
    $(this).attr("checked",true);

});

单选按钮更适合您尝试执行的操作。但是,如果必须使用复选框,则应使用以下选项:

$(".check").click(function(){
    $(".check").not(this).prop("checked", false);
});

对于只需检查一个选项的选项组,请使用或:

请注意,我将绑定到更改事件,因为用户可能会单击标签或其他东西,我不确定在这种情况下是否会触发复选框上的合成单击


另一方面:属性中缺少元素。

为什么不使用单选按钮呢?三个不同的类如何?@L10-指定的要求与单选按钮不完全相同,因为用户无法取消选中所有单选按钮。@nnnn-是的……但OP要求只选择一个。。因此我建议。你应该这样做或单选按钮。避免我下面的答案中出现的复选标记闪烁。指定的要求与单选按钮不完全相同,因为使用单选按钮时,用户无法取消选中所有按钮。这一点很好,尽管他没有指定用户应能够取消选中所有按钮,这可能会有所不同。单击标签会触发关联输入上的单击事件,尽管如您所述,OP的标签没有关联。
$(document).ready(function() {
    var $cbs = $(".check").click(function() {
        $cbs.not(this).prop("checked", false);
    });
});
$(".check").click(function(){
    $(".check").not(this).prop("checked", false);
});
<input type="radio" name="check" value="one"><label>One</label>
<input type="radio" name="check" value="two"><label>Two</label>
<input type="radio" name="check" value="three"><label>Three</label>
$(".check").change(function(){
    $(".check").prop("checked", false);
    $(this).prop("checked", true)
});
$(document).ready(function() {
    var $cbs = $(".check").click(function() {
        $cbs.not(this).prop("checked", false);
    });
});