Javascript 选中两个复选框时,使输入部分成为必需部分
因此,我有两个复选框,当分别单击时,将使底部部分成为必需的-我如何使最后一部分是必需的,当这两个都选中时?我似乎不知道该怎么做 概述:Javascript 选中两个复选框时,使输入部分成为必需部分,javascript,jquery,Javascript,Jquery,因此,我有两个复选框,当分别单击时,将使底部部分成为必需的-我如何使最后一部分是必需的,当这两个都选中时?我似乎不知道该怎么做 概述: 当两个复选标记都选中时,将“我确认…”部分设置为红色(必需) #rtd3Transaction是“我的交易数据”。 .rtdConfirm是上一节中的类 代码: /* Make checkbox textboxes not required unless checked */ $(document).ready(function() { $('#rtd
当两个复选标记都选中时,将“我确认…”部分设置为红色(必需)
#rtd3Transaction
是“我的交易数据”。.rtdConfirm
是上一节中的类
代码:
/* Make checkbox textboxes not required unless checked */
$(document).ready(function() {
$('#rtd3Transaction').change(function() {
if ($('.rtdConfirm').attr('required')) {
$('.rtdConfirm').removeAttr('required');
}
else {
$('.rtdConfirm').attr('required','required');
}
});
});
$(document).ready(function() {
$('#rtd3Device').change(function() {
if ($('.rtdConfirm').attr('required')) {
$('.rtdConfirm').removeAttr('required');
}
else {
$('.rtdConfirm').attr('required','required');
}
});
});
哈哈,我不是说过只使用一个
$(document).ready()
函数吗
无论如何,只需将这两个条件组合成第三个change
函数
/* Make checkbox textboxes not required unless checked */
$(document).ready(function() {
$('#rtd3Transaction').change(function() {
if ($('.rtdConfirm').attr('required')) {
$('.rtdConfirm').removeAttr('required');
}
else {
$('.rtdConfirm').attr('required','required');
}
});
$('#rtd3Device').change(function() {
if ($('.rtdConfirm').attr('required')) {
$('.rtdConfirm').removeAttr('required');
}
else {
$('.rtdConfirm').attr('required','required');
}
});
$('#rtd3Transaction, #rtd3Device').change(function() {
if ($('#rtd3Transaction').checked && $('#rtd3Transaction').checked) {
$('.rtdConfirm').attr('required','required');
}
else {
$('.rtdConfirm').removeAttr('required');
}
});
});
如果这不起作用,请发布其余的代码,我会看看我能做些什么。在JS中,您可以在包含复选框的父项上使用
onchange
事件,最好是一个表单,并检查两个复选框是否都已选中,如果它们确实将第三个复选框设置为必需的
const rtd3Transaction = document.querySelector('#rtd3Transaction');
const rtd3Device = document.querySelector('#rtd3Device');
const rtdConfirm = document.querySelector('#rtdConfirm');
document.querySelector('form').addEventListener('change', ()=> {
if(rtd3Transaction.checked && rtd3Device.checked) {
rtdConfirm.required = true;
}
})
我看到您正在使用jQuery,所以这里有一个基于jQuery的解决方案 首先,您可以为两个输入组合更改事件处理程序 其次,您可以使用.prop(“checked”)查找复选框的选中状态 最后,使用.prop(“required”,true/false)设置上一个复选框的所需状态 我是这样做的:
$(document).ready(function()
{
$("#rtd3Transaction, #rtd3Device").change(function()
{
var required = $("#rtd3Transaction").prop("checked") && $("#rtd3Device").prop("checked");
$(".rtdConfirm").prop("required", required);
});
});
这回答了你的问题吗?您能否也包括
HTML
部分?谢谢我已经完成了部分,当它检查是否在某个部分上选中时-只是想看看是否有可能查看两者是否可以同时进行。让我们看看你已经完成的部分。你希望单击两个父复选框(事务数据和设备信息)中的任何一个如何影响以前激活的子项(红色确认)?请你把问题说清楚一点好吗。