Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Jquery validate проверка с условием (https://javascript.ru/forum/jquery/24557-jquery-validate-proverka-s-usloviem.html)

myocean 05.01.2012 20:44

Jquery validate проверка с условием
 
Добрый день!
Все с наступившим новым годом и наступающим рождеством!!!

Подскажите кто сталкивался с jquery.validate...

Есть форма, с тремя полями:

<form id="myForm">
<input type="text name="name1" >
<input type="text name="name2" >
<input type="text name="name3" >
<input type="submit" name="ok" value="Добавить">
</form>



<script type="text/javascript">
$().ready(function(){
       $("#myForm").validate({
               rules : {
                       name1 : "required",
                       name2 : "required",
                       name3 : "required"
               },
               messages : {
                       name1: "Заполните поле 1",
                       name2: "Заполните поле 2",
                       name3: "Заполните поле 3",
               }
       });
});
</script>


Можно ли задать валидацию но с условием.... скажем поле name3 будет проверятся только при заполненном name2, иначе проверка не осуществляется?

Или такой вариант... поле name 3 необязательное.... если не заполнено ошибка не выводится, если заполнено, то проверка на валидность (скажем на e-mail или url)

myocean 05.01.2012 21:00

Ага, нашел решение для второго вопроса....


<script type="text/javascript">
$().ready(function(){
       $("#myForm").validate({
               rules : {
                       name1 : "required",
                       name2 : "required",
                       name3 : {required: false, email: true},
               messages : {
                       name1: "Заполните поле 1",
                       name2: "Заполните поле 2",
                       name3: {
                               email : "email указан неверно"
                       },
               }
       });
});
</script>


Часовой пояс GMT +3, время: 23:39.