2014-09-25 2 views
0

У меня есть 3 поля. Я хочу проверить правильность всех трех полей и разрешить отправку формы, если заполнено не менее одного поля. Я не могу этого сделать.Jquery single validation form in multiple fields

Пожалуйста, проверьте мой код:

<script type="text/javascript"> 
    $(function(){ 
     $("#field1").validate({ 
      expression: "if (VAL) return true; else return false;", 
      message: "Please enter username!", 
     });     
     $("#field2").validate({ 
      expression: "if (VAL) return true; else return false;", 
      message: "Please enter username!", 
     }); 
     $("#field3").validate({ 
      expression: "if (VAL) return true; else return false;", 
      message: "Please enter username!", 
     }); 

    });   
</script> 

HTML-

<form> 
    <input type="text" id="field1" /> <!-- username1 --> 
    <input type="text" id="field2" /> <!-- username2 --> 
    <input type="text" id="field3" /> <!-- username3 --> 
    <input type="submit id="submit" value="Submit" /> 
</form> 

В приведенном выше коде, проверка требует, чтобы все поля должны быть заполнены. Но мое требование - заполнять только одно поле. Если я оставлю все поля, тогда сообщение «Пожалуйста, введите имя пользователя!». покажет.

JSFIDDLE

+0

Является '.validate()' плагин или ваш собственный метод? Возможно, вы можете установить это как [jsFiddle] (http://jsfiddle.net/)? – Moob

+0

Нет, я использую 'jquery.validate.js' и' jquery.validation.functions.js' – Developer

+0

Проверьте http://myshowcam.com/TestSite/js/jquery.validate.js и http://myshowcam.com /TestSite/js/jquery.validation.functions.js – Developer

ответ

0

В соответствии с вашими требованиями, проверить это:

<form action="" onsubmit="return validateForm();" > 
    <input type="text" id="field1" name="field1" /> <!-- username1 --> 
    <input type="text" id="field2" name="field2" /> <!-- username2 --> 
    <input type="text" id="field3" name="field3" /> <!-- username3 --> 
    <input type="submit" id="submit" name="submit" value="Submit" /> 
</form> 

<script> 
    function validateForm() 
    { 
     field1=$('#field1').val(); 
     field2=$('#field2').val(); 
     field3=$('#field3').val(); 

     if(field1 == '' && field2 == '' && field3 == '') 
     { 
      alert('Please fill atleast one field.'); 
      return false; 
     } 
     else 
     { 
      return true; 
     } 
    } 
</script>