JQuery проверки формы, показать только последнее сообщение об ошибке - PullRequest
2 голосов
/ 16 августа 2010

Я использую плагин для проверки формы jQuery.

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

Почему это происходит и как это исправить, чтобы отображалось только последнее сообщение об ошибках / успехах?

Вот код в голове:

<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/lib/jquery.delegate.js"></script>
<script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js"></script>
<script type="text/javascript">
jQuery.validator.setDefaults({
    debug: false,
    success: "valid"
});;
</script>

  <script>
  $(document).ready(function(){
    $("#myform").validate({
  rules: {
    file: "required",
    name: "required",
    owner: "required"
  }
});
  });
  </script>

А вот форма (слегка упрощенная):

<form id="myform" action="upload" method="post" enctype="multipart/form-data">

Select file to upload: *    
<input type="file" name="file" id="file" title="Please select a file to upload">

Name for file: *
<input type="text" name="name" value="{{ name }}" id="new_file_name" title="Please choose a filename">

Select owner for file: *
<select name="owner" id="owner" title="Please select an owner">
<option value="">[ Choose an owner ]</option>
...options generated by template system...
</select>

File comments:
<textarea rows="5" cols="20" name="comments">{{ comments }}</textarea>

<input type=submit value=Upload>
</form>

EDIT: Форма была внутри таблицы в моем оригинальном HTML.Эта ошибка возникает только тогда, когда форма находится внутри таблицы.

1 Ответ

0 голосов
/ 16 августа 2010

Работает нормально у меня: http://jsfiddle.net/ryleyb/H6rQT/

Можете ли вы взглянуть на мой пример, сравнить с тем, что вы делаете, и посмотреть, есть ли что-то другое в вашем? Моим первым предположением будет то, что вы вызываете функцию проверки где-то по щелчку, а не один раз в document.ready() ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...