как проверить форму перед отправкой - PullRequest
1 голос
/ 28 ноября 2011

Я хотел проверить проверку определенного поля перед отправкой form.

<form method="post" action="test.do">
  <input type="file" id="file1" />
  <input type="file" id="file2" />
  <input type="file" id="file3" />

  <input type="button" id="submitButton" />
</form>

Я хочу проверить только проверку id = file2 & file3.Его не следует оставлять пустым.

$("#submitButton").click(function() {
     if(validate()){
        $(this).closest("form").submit();
    }
   });

function validate() {
    /*  if blank return false else true */
  how to validate here ??
}

* Примечание: *, поскольку у меня есть сотни полей для проверки, было бы очень долго использовать id для проверки.

Есть ли другой способ проверить?

Ответы [ 6 ]

3 голосов
/ 28 ноября 2011

Я бы добавил атрибут класса к проверенным полям:

<input type="file" id="file2" class="validate" />
<input type="file" id="file3" class="validate" />

А затем выполните некоторую проверку с помощью селектора jQuery: $ ('. Validate')

$('.validate').each(function(){
     if($(this).val() == ''){
          return false; 
     }
 });
1 голос
/ 28 ноября 2011

Сотни полей?

Ну, так как вы используете jQuery, я бы предложил плагин проверки jQuery .

Документация исчерпывающая, а плагин позволяет легко проверять несколько полей практически без установки, кроме добавления классов в <input>s.

Если вы хотите углубиться в детали, плагин также позволяет вам писать собственные сообщения об ошибках для каждого поля, но это немного выходит за рамки вопроса.

1 голос
/ 28 ноября 2011

, если вы пытаетесь проверить пустые поля ввода только почему не используете:

 $(':input').each(function(){
     if($(this).val() <= ""){
          return false; 
     }
 });
1 голос
/ 28 ноября 2011

вы можете попробовать вот так

function validate() 
{   
    if(!$('#file2').val() && !$('#file1').val())
    {
        alert('please select file 1 and file2');
    }
}
1 голос
/ 28 ноября 2011
var valid = true;
$('input[type=file]').each(function()
    { if ($(this).val() == '') valid = false; }
);
return valid;

Возможно, вам потребуется выполнить другую проверку, кроме val () == '' Я не пробовал это.

0 голосов
/ 31 марта 2015

Give id = "form" для формы.

function validate() {
    var validator = $("#form").validate();
    var isValid = validator.form();
    return isValid;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...