0

您好我正在使用以下功能从复选框中删除所需的属性,以防单击任何复选框。

$(document).ready(function(){
    $(".aboveage5").click(function(){
            if ($('input[name="tipo_de_producto_que_fabrica[]"]').val() != "" ) {
                $('input[name="tipo_de_producto_que_fabrica[]"]').removeAttr('required');
                 //Slide Down Effect  
            } else {           
                $('input[name="tipo_de_producto_que_fabrica[]"]').prop('required',true);    //Slide Up Effect
            }
         });            
    });

当我加载页面时,如果我在点击提交按钮之前点击其中的一些,一切正常。但是,如果我没有进行选择并且对所需字段的检查表明我必须选择任何复选框都不起作用。我的意思是它正在工作它删除了所需的属性但是我点击提交什么也没发生,我的意思是一个文本字段仍然需要但没有说明代码中的哪个字段我可以看到该属性正在被删除但它没有提交任何东西,它都保持在同一页面上。

这是输入:

<input type="checkbox" required="required" class="aboveage5"  name="tipo_de_producto_que_fabrica[]" value="Val 1"  />val 1<br />
<input type="checkbox" required="required" class="aboveage5"  name="tipo_de_producto_que_fabrica[]" value="Val 2"  />Val 2<br />
4

1 回答 1

0

使用:checked伪选择器匹配选中和未选中的框。

$(document).ready(function () {
    $(".aboveage5").click(function () {
        $('input[name="tipo_de_producto_que_fabrica[]"]:not(:checked)').removeAttr('required');
        $('input[name="tipo_de_producto_que_fabrica[]"]:checked').attr('required', true);
    });
});

小提琴

于 2013-10-17T00:37:57.943 回答