用jquery删除所需的attr

时间:2017-03-14 20:53:18

标签: javascript jquery html onclick

当我勾选复选框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');
}});

1 个答案:

答案 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>