@RushV

Как разблокировать кнопку, если заполнены все input'ы?

Есть форма, в форме два поля "input" и кнопка.
Как при заполнении всех input'ов убирать disabled с кнопки?
Код, который я написал, отслеживает только самое первое поле:

var input = $('input');
	var button = $('button').attr('disabled', 'disabled');
	var y = $(input).on('change', function(){
		if(input.val().length !==0){
			button.removeAttr('disabled', 'disabled');
		}else{
			button.attr('disabled', 'disabled');
		}
	});

Как отследить все input'ы?
  • Вопрос задан
  • 118 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
const onInput = () => $button.prop('disabled', !$inputs.get().every(n => $(n).val()));
const $button = $('селектор кнопки');
const $inputs = $('селектор инпутов').on('input', onInput);
onInput();

или

const button = document.querySelector('селектор кнопки');
const inputs = [...document.querySelectorAll('селектор инпутов')];
const onInput = () => button.disabled = inputs.some(n => !n.value);
inputs.forEach(n => n.addEventListener('input', onInput));
onInput();
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы