Проверка формы на отправку и на фокус


0

Похоже, что ваша функция принимает коллекцию jQuery, которая содержит поле ввода в качестве аргумента. Один из способов добиться этого, основанный на коде, ваша попытка может быть примерно такой: $("#formcontato").submit(function(event){ var input = $(this).find("input[type='text'], textarea"); event.preventDefault(); if (validar(input)){ $.ajax({ blablablabla }); } });

<input type="submit" class="btn" value="My Input Submit" disabled/>

Еще один простой способ достичь конечной цели - отключить кнопку отправки по умолчанию. Например:

validar

Вы можете изменить вашу trueфункцию , чтобы вернуться validoв случае , если вход активен. Таким образом вы можете использовать возвращаемое значение, чтобы определить, должна ли быть включена кнопка отправки. Например:function validar(input) { var valido = true; // lets assume its valid to start with if(input.attr("id") === "email"){ var filtro = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/; if(filtro.test(input.val())){ input.css('border-color', 'green'); } else { input.css('border-color', 'red'); valido = false; } } else if (input.val()===''){ input.css('border-color', 'red'); valido = false; } else if (input.val()!='') { input.css('border-color', 'green'); } return valido; }

focusout

Затем вы можете использовать использование возвращаемого значения в focusoutобработчике событий, чтобы включить кнопку, если форма действительна так:

$('input[type="text"],textarea').focusout(function() {
  var isValid = validar($(this));
  if (isValid) {
    $('#formcontato').find('input[type="submit"]').prop('disabled', false);
  }
});   
JavaScript, JQuery, AJAX, формы,

javascript,jquery,ajax,forms,

0

Ответов: 1


0

Похоже, что ваша функция принимает коллекцию jQuery, которая содержит поле ввода в качестве аргумента. Один из способов добиться этого, основанный на коде, ваша попытка может быть примерно такой: $("#formcontato").submit(function(event){ var input = $(this).find("input[type='text'], textarea"); event.preventDefault(); if (validar(input)){ $.ajax({ blablablabla }); } });

<input type="submit" class="btn" value="My Input Submit" disabled/>

Еще один простой способ достичь конечной цели - отключить кнопку отправки по умолчанию. Например:

validar

Вы можете изменить вашу trueфункцию , чтобы вернуться validoв случае , если вход активен. Таким образом вы можете использовать возвращаемое значение, чтобы определить, должна ли быть включена кнопка отправки. Например:function validar(input) { var valido = true; // lets assume its valid to start with if(input.attr("id") === "email"){ var filtro = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/; if(filtro.test(input.val())){ input.css('border-color', 'green'); } else { input.css('border-color', 'red'); valido = false; } } else if (input.val()===''){ input.css('border-color', 'red'); valido = false; } else if (input.val()!='') { input.css('border-color', 'green'); } return valido; }

focusout

Затем вы можете использовать использование возвращаемого значения в focusoutобработчике событий, чтобы включить кнопку, если форма действительна так:

$('input[type="text"],textarea').focusout(function() {
  var isValid = validar($(this));
  if (isValid) {
    $('#formcontato').find('input[type="submit"]').prop('disabled', false);
  }
});   
JavaScript, JQuery, AJAX, формы,
Похожие вопросы