Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.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 - Fatal编程技术网

Jquery 选中单选按钮时,复选框变为必填项

Jquery 选中单选按钮时,复选框变为必填项,jquery,Jquery,如果选中某个单选按钮,我将尝试编写jQuery代码以验证其有效性。 如果选中该单选按钮,将显示4个复选框,并且必须至少选中其中一个复选框。 如果没有,浏览器将显示警报,而在另一种情况下,则发送表单 问题是,即使我选中了一个复选框,我也会收到浏览器提示,表示我没有选中任何复选框,并且ofc表单不会提交。 Thx提前 HTML: 您的代码没有什么问题 1) 选择复选框的父div作为目标的选择器不正确D_div是div的id,而不是类。因此,您需要使用id选择器#而不是类选择器: var checke

如果选中某个单选按钮,我将尝试编写jQuery代码以验证其有效性。 如果选中该单选按钮,将显示4个复选框,并且必须至少选中其中一个复选框。 如果没有,浏览器将显示警报,而在另一种情况下,则发送表单

问题是,即使我选中了一个复选框,我也会收到浏览器提示,表示我没有选中任何复选框,并且ofc表单不会提交。 Thx提前

HTML:


您的代码没有什么问题

1) 选择复选框的父div作为目标的选择器不正确
D_div
是div的id,而不是类。因此,您需要使用id选择器
#
而不是类选择器

var checkedboxes = $('#D_div :checkbox:checked').length;
                    //^^  ID selector here
2) 你有语法错误。您没有为if条件使用右大括号

if ($('#D_odg').prop('checked') && checkedboxes===0)
                                                // ^^ missing brace

您的代码存在一些问题

1) 选择复选框的父div作为目标的选择器不正确
D_div
是div的id,而不是类。因此,您需要使用id选择器
#
而不是类选择器

var checkedboxes = $('#D_div :checkbox:checked').length;
                    //^^  ID selector here
2) 你有语法错误。您没有为if条件使用右大括号

if ($('#D_odg').prop('checked') && checkedboxes===0)
                                                // ^^ missing brace

试试这个:您使用了类选择器,而不是
D\u div
的id选择器。此外,您还可以将
$('D#u odg').prop('checked')
更改为
$('D#u odg')。更具可读性的是(':checked')
,请参见下面的代码

$('#button').click(function () {

        var checkedboxes = $('#D_div :checkbox:checked').length;

         if ($('#D_odg').is(':checked') && checkedboxes===0){
          alert('At least 1 checkbox must be selected');
          return false;

         }else{

          alert('Form submited!');

         }           

    });

试试这个:您已经使用了类选择器而不是
D\u div
的id选择器。此外,您还可以将
$('D#u odg').prop('checked')
更改为
$('D#u odg')。更具可读性的是(':checked')
,请参见下面的代码

$('#button').click(function () {

        var checkedboxes = $('#D_div :checkbox:checked').length;

         if ($('#D_odg').is(':checked') && checkedboxes===0){
          alert('At least 1 checkbox must be selected');
          return false;

         }else{

          alert('Form submited!');

         }           

    });

==0之后缺少右括号。另外:复选框:checked返回0。这项工作:

$('#button').click(function () {
    var checkedboxes = $('[name="c3"]:checked').length;
    if ($('#D_odg').prop('checked') && checkedboxes===0){
        alert('At least 1 checkbox must be selected');
        return false;
    }else{
        alert('Form submited!');
    }           
});

==0之后缺少右括号。另外:复选框:checked返回0。这项工作:

$('#button').click(function () {
    var checkedboxes = $('[name="c3"]:checked').length;
    if ($('#D_odg').prop('checked') && checkedboxes===0){
        alert('At least 1 checkbox must be selected');
        return false;
    }else{
        alert('Form submited!');
    }           
});

用于类,而
用于id。选择器differences
用于类,而
用于id。选择器differersprop返回值及其类型
prop('checked')
is(':checked')
将返回相同的值。@milindantwar哦,好的。。我不知道。感谢您的更正,Prop将返回值及其类型
prop('checked')
is(':checked')
将返回相同的值。@milindantwar哦,好的。。我不知道。谢谢你correction@Prism:很高兴有帮助:)@Prism:很高兴有帮助:)