jQuery(document).ready(function($) {
$('#publish').on('click', function(e) {
var invalidField = null;
// Loop through all required ACF fields
$(':input[required]').each(function() {
var $this = $(this);
if (!$this.val()) {
invalidField = $this;
return false; // break loop on first empty required
}
});
if (invalidField) {
e.preventDefault(); // stop Publish
var $fieldWrapper = invalidField.closest('.acf-field');
var $tabField = $fieldWrapper.prevAll('.acf-field-tab:first');
if ($tabField.length) {
var get_req_key = $tabField.attr('data-key');
// Open the tab containing the invalid field
$('a.acf-tab-button[data-key="'+get_req_key+'"]').trigger('click');
// Focus on the invalid field after a short delay
setTimeout(function() {
invalidField.focus();
}, 200);
console.log(
'Opened tab for required field:',
$tabField.find('a').text()
);
} else {
invalidField.focus();
}
// Optional: highlight field visually
invalidField.css('border', '2px solid red');
}
});
});
Jagdish Sarma Asked question October 30, 2025