当我勾选复选框livelongwarranty时,我可以从输入字段warranty_duration中删除所需的attr
years warrenty<label id="warrantyDurationlabel"><input name="warranty_duration" type="number" placeholder="aantal jaren garantie" min="1" size="25" required /></label>
levenlang<label id="livelongwarranty"><input name="livelong_warranty" type="checkbox" onclick="js/warrantyrequired.js" /></label>
我有以下jquery:
$('#livelong_warranty').change(function () {
if($(this).is(':checked') {
$('#warranty_duration').removeAttr('required');
} else {
$('#warranty_duration').attr('required');
}});
答案 0 :(得分:1)
我必须为你的输入添加id属性,因为它们没有ID(你可以搜索名字,但我认为这不是你想要的)。 Name主要用于通过HTML / PHP表单发送的post / get数据,id用于引用,样式和更多JavaScript元素。
$('#livelong_warranty').on('change', function () {
$('#warranty_duration').attr('required',$('#livelong_warranty').is(":checked"));
console.log($('#warranty_duration').attr('required'));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
years warrenty<label id="warrantyDurationlabel"><input name="warranty_duration" id="warranty_duration" type="number" placeholder="aantal jaren garantie" min="1" size="25" required /></label>
levenlang<label id="livelongwarranty"><input name="livelong_warranty" id="livelong_warranty" type="checkbox" /></label>