jQuery(document).ready(function($) {
// Target the specific form (in case there are multiple on the page)
var $form = $('form.cart');
var $addToCartBtn = $form.find('button.single_add_to_cart_button');
// Initially disable the button
$addToCartBtn.prop('disabled', true);
// Function to check if all required radio fields have a selected option
function validateRequiredOptions() {
let allValid = true;
$form.find('.wpc-inner-addon-container').each(function() {
const group = $(this);
const radios = group.find('input[type=radio]');
const name = radios.first().attr('name');
if (name && !$(`input[name="${name}"]:checked`).length) {
allValid = false;
}
});
$addToCartBtn.prop('disabled', !allValid);
}
// Bind change event on radio buttons
$form.find('input[type=radio]').on('change', validateRequiredOptions);
// Optional: validate on page load (useful if preselected)
validateRequiredOptions();
});