javascript remove required属性不起作用
您好,我正在使用以下函数从复选框中删除所需的属性,以防单击任何复选框javascript remove required属性不起作用,javascript,jquery,Javascript,Jquery,您好,我正在使用以下函数从复选框中删除所需的属性,以防单击任何复选框 $(document).ready(function(){ $(".aboveage5").click(function(){ if ($('input[name="tipo_de_producto_que_fabrica[]"]').val() != "" ) { $('input[name="tipo_de_producto_que_fabrica[]"]')
$(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
}
});
});
当我加载页面时,如果我在点击提交按钮之前点击其中的一些页面,一切正常。但是如果我没有进行选择,并且对requred字段的检查表明我必须选择任何复选框,但这些复选框不起作用。我的意思是它正在工作,它删除了所需的属性,但我点击了submit没有发生任何事情,我的意思是一个文本字段仍然是必需的,但没有说明代码中的哪个字段我可以看到该属性被删除,但它没有提交任何内容,它保持在同一页面上
这是输入:
<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 />
val 1
Val 2
使用: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);
});
});
你应该使用
.prop('required',false)
而不是removeAttr
谢谢Barmar,你就是那个人,这很好,我有其他地方的错误,我会调查,但效果很好。