使用空字符串设置属性
Set attribute with an empty string
我正在尝试使用 jQuery 在字段上切换 required
属性。在页面加载时,我将 required
属性添加到相关元素:
$("[data-required]").attr("required", "");
然后我有一个切换函数可以做很多事情,包括切换 required
属性:
if ($(childInput).attr('data-required')) {
if (element.checked) {
$(childInput).attr('required', '');
$(childInput).rules('add', { required: true });
}
if (!element.checked) {
$(childInput).attr('required', false);
$(childInput).rules('remove');
}
}
但是,在这两种情况下(在页面加载和切换时),required
属性都设置为 required="required"
。我是在使用不正确的语法,还是遗漏了什么?我不明白为什么要在属性值中插入“required”。
.attr("required", true);
和 .attr("required", "true");
导致相同的行为。
好的,我不完全确定为什么,但这行得通:
$("[data-required]").prop("required", true);
切换函数中的if语句:
if ($(childInput).attr('data-required')) {
if (element.checked) {
$(childInput).prop('required', true);
$(childInput).rules('add', { required: true });
}
if (!element.checked) {
$(childInput).attr('required', false);
$(childInput).rules('remove');
}
}
我正在尝试使用 jQuery 在字段上切换 required
属性。在页面加载时,我将 required
属性添加到相关元素:
$("[data-required]").attr("required", "");
然后我有一个切换函数可以做很多事情,包括切换 required
属性:
if ($(childInput).attr('data-required')) {
if (element.checked) {
$(childInput).attr('required', '');
$(childInput).rules('add', { required: true });
}
if (!element.checked) {
$(childInput).attr('required', false);
$(childInput).rules('remove');
}
}
但是,在这两种情况下(在页面加载和切换时),required
属性都设置为 required="required"
。我是在使用不正确的语法,还是遗漏了什么?我不明白为什么要在属性值中插入“required”。
.attr("required", true);
和 .attr("required", "true");
导致相同的行为。
好的,我不完全确定为什么,但这行得通:
$("[data-required]").prop("required", true);
切换函数中的if语句:
if ($(childInput).attr('data-required')) {
if (element.checked) {
$(childInput).prop('required', true);
$(childInput).rules('add', { required: true });
}
if (!element.checked) {
$(childInput).attr('required', false);
$(childInput).rules('remove');
}
}