I have Category of Show Field checkbox and Required field checkbox. If show field checkbox is selected then Required field checkbox automatically selected and not able to deselect in Required field. Atleast one checkbox is mandatory.
//Code Starts From Here
$(“#nameFieldHideShow, #phoneFiieldHideShow, #emailFiieldHideShow, #variantsFiieldHideShow”).change(function() {
var requiredCheckboxId = “#” + $(this).attr(‘id’).replace(“HideShow”, “Required”);
$(requiredCheckboxId).prop(‘checked’, $(this).prop(“checked”));
var anyShowFieldChecked = $("#nameFieldHideShow").prop("checked") || $("#phoneFiieldHideShow").prop("checked") || $("#emailFiieldHideShow").prop("checked") || $("#variantsFiieldHideShow").prop("checked");
if (!$("#nameFieldRequired").prop("checked") && !$("#phoneFiieldRequired").prop("checked") && !$("#emailFiieldRequired").prop("checked") && !$("#variantsFiieldRequired").prop("checked")) {
if (anyShowFieldChecked) {
var randomRequiredCheckbox = Math.floor(Math.random() * 3);
var selectedCheckboxId = ["#nameFieldHideShow", "#phoneFiieldHideShow", "#emailFiieldHideShow", "#variantsFiieldHideShow"][randomRequiredCheckbox];
if ($(selectedCheckboxId).prop("checked")) {
$("#nameFieldRequired, #phoneFiieldRequired, #emailFiieldRequired, #variantsFiieldRequired").eq(randomRequiredCheckbox).prop("checked", true);
}
}
}
});
function randomlySelect() {
var showFieldChecked = $("#nameFieldHideShow:checked, #phoneFiieldHideShow:checked, #emailFiieldHideShow:checked, #variantsFiieldHideShow:checked").length > 0;
var requiredFieldChecked = $("#nameFieldRequired:checked, #phoneFiieldRequired:checked, #emailFiieldRequired:checked, #variantsFiieldRequired:checked").length > 0;
if (!showFieldChecked && !requiredFieldChecked) {
var showFieldCheckboxes = $("#nameFieldHideShow, #phoneFiieldHideShow, #emailFiieldHideShow, #variantsFiieldHideShow");
var randomShowCheckbox = showFieldCheckboxes.eq(Math.floor(Math.random() * showFieldCheckboxes.length));
randomShowCheckbox.prop("checked", true);
var requiredFieldCheckboxes = $("#nameFieldRequired, #phoneFiieldRequired, #emailFiieldRequired, #variantsFiieldRequired");
var randomRequiredCheckbox = requiredFieldCheckboxes.eq(Math.floor(Math.random() * requiredFieldCheckboxes.length));
var selectedCheckboxId = ["#nameFieldHideShow", "#phoneFiieldHideShow", "#emailFiieldHideShow", "#variantsFiieldHideShow"][randomRequiredCheckbox.index()];
if ($(selectedCheckboxId).prop("checked")) {
randomRequiredCheckbox.prop("checked", true);
}
}
}
randomlySelect();
$("#nameFieldRequired, #phoneFiieldRequired, #emailFiieldRequired, #variantsFiieldRequired").change(function() {
var checkedRequiredCount = $("#nameFieldRequired:checked, #phoneFiieldRequired:checked, #emailFiieldRequired:checked, #variantsFiieldRequired:checked").length;
if (checkedRequiredCount === 0) {
$(this).prop("checked", true);
randomlySelect();
}
});
AresHere is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.