$('form').find('input').each(function () {
$($(this)).on('input', function () {
if ($(this).val().length == 0) {
$('.button').attr('disabled', true);
}
else {
$('.button').attr('disabled', false);
}
})
})
$('form').on('input', function() {
$('.button').prop('disabled', $('input', this).get().some(n => !n.value));
}).trigger('input');const form = document.querySelector('form');
const button = document.querySelector('.button');
// можно по-прежнему самостоятельно проверять значения input'ов
const inputs = [...form.querySelectorAll('input')];
const onInput = () => button.disabled = !inputs.every(n => n.value);
form.addEventListener('input', onInput);
onInput();
// но если добавить input'ам атрибут required...
form.addEventListener('input', function() {
button.toggleAttribute('disabled', !this.checkValidity());
});
form.dispatchEvent(new Event('input'));