плагин проверки jquery - PullRequest
       12

плагин проверки jquery

0 голосов
/ 05 декабря 2009

кто-то использовал этот плагин jquery для проверки формы?

http://docs.jquery.com/Plugins/Validation

Я не могу понять, как его использовать. в документации ничего не говорится о том, как назвать элементы формы html, чтобы он работал с методом validate ().

и вопрос № 2, какую проверку класса php можно использовать на стороне сервера?

РЕДАКТИРОВАТЬ: почему это не работает:

$("#register_box_form").validate({
    rules: {
        name: {
            required: true,
            minlength: 3
        }

        email: {
            required: true,
            minlength: 3,
            email: true
        }
    }
});

Ответы [ 2 ]

1 голос
/ 06 декабря 2009

<input type="text" id="email" name="email" class="required email" />, в этом коде значения атрибута класса 'required' и 'email' действуют так же, как правила, определенные в методе validate в функции готовности документа. Это означает, что class="required email" равно,

email: {
          required: true,
          email: true
        }

в приведенном выше примере. Я расскажу, какие шаги необходимы для включения проверки JQuery. (вы, возможно, уже знаете каждый шаг) Для использования проверки JQuery, Сначала вы должны включить основной файл js библиотеки jquery и файл js плагина проверки jquery. Затем в документе о функции готовности вы должны связать функцию проверки с требуемой формой (как упоминалось в примере выше). Вы можете объявить правила валидации в этой функции валидации или в качестве значений для атрибута класса соответствующего элемента ввода, как я описал выше. Иногда у меня возникают проблемы, когда я использую разные значения для атрибута id и атрибута name для элементов ввода. Я не знаю причину этого. Поэтому попробуйте указать одинаковые значения для атрибутов id и name и проверьте, не работает ли все еще проверка.

Вы можете использовать уже включенные правила проверки, такие как электронная почта, URL, номер, цифра и т. Д. а также существует правило, называемое «удаленным», которое можно использовать для отправки ajax-запроса и проверки на стороне сервера. В дополнение к этому вы можете определить пользовательские правила в соответствии с вашими потребностями. Например, я использовал следующий код для добавления настраиваемого правила проверки, обеспечивающего правильную политику паролей.

$.validator.addMethod("passwd_policy", function( value, element, param ) {
        return this.optional(element)
            || (value.length >= 8
                && /.[!,@,#,$,%,^,&,*,?,_,~]/.test(value) 
                && /[0-9]/.test(value)
                && /[a-z]/.test(value)
                && /[A-Z]/.test(value));
    },"Your password must be at least 8 characters long, <br/>contain at least one number, <br/>"
      +" at least one special character (!,@,#,$,%,^,&,*,?,_ ,~),<br/> at least one uppercase"
      +" character  <br/>and at least one lowercase character.");

Вы можете добавить этот пользовательский метод проверки, чтобы проверить поле так же, как и при использовании встроенных методов. это как

   "txt_passwd": {
        passwd_policy: true
    },
0 голосов
/ 05 декабря 2009

Вы указываете правила для полей в форме. Это пары ключ / значение, где ключ - это имя поля.

например. форма с полями имя и электронная почта (из документации на http://docs.jquery.com/Plugins/Validation/validate#options)

$(".selector").validate({
   rules: {
     // simple rule, converted to {required:true}
     name: "required",
     // compound rule
     email: {
       required: true,
       email: true
     }
   }
})

Вы можете использовать Zend Framework для части php. Он имеет некоторую интеграцию JQuery , но не для плагина проверки (пока?).

edit: в вашем примере между двумя элементами литерала ваших правил отсутствует запятая.

<html>
  <head>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
    <script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js"></script>
    <script type="text/javascript">
      $(document).ready(function() {
        $("#register_box_form").validate( {
          rules: {
            name: {
              required: true,
              minlength: 3
            },
            email: {
              required: true,
              email: true
            }
          }
        });
      });
    </script>
  </head>
  <body>
    <form method="post" action="?" id="register_box_form">
      <div>
        <input type="text" name="name" /><br />  
        <input type="text" name="email" /><br />
        <input type="submit" />
      </div>
    </form>
  </body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...