2

我有一个表单,我试图验证具有相同类的字段。必需的

<form id="HotelBooking" method="post" action="#">
<input type="text" class="required"  name="vardas" />
<input type="text" class="required"  name="pav" />
<input type="text" class="required"  name="tel" />
<input type="submit"  name="sb"  value="Tvirtinti" onclick="tikrinti();"/>
</form>

JS 代码适用于第一个字段,它显示错误,但表单仍然提交并重置字段。

$(document).ready(function() { 
  $('#HotelBooking').submit(function () {
  $(".required").each(function(){
            if($(this).val().length == 0)
            {
               alert('Please Enter your value');
               $(this).focus(); 
               return false;
            }
        });
 });   
});

我做错了什么?

4

3 回答 3

4

你应该把return false外面each()

$('#HotelBooking').submit(function () {
    var errors = 0
    $(".required").each(function(){
        if( $.trim($(this).val()).length == 0) { // make sure that there is no extra whitespace
           errors++ 
        }
    });
    if (errors > 0) {
       alert('please Enter your value for ' +errors+ 'remaining fields')
       return false;
    } 
}); 
于 2012-07-17T20:39:59.943 回答
2

问题是您是falseeach()-function 返回的,而不是submit()-function。

这是一个修复:

$(document).ready(function () {
    $('#HotelBooking').submit(function () {
        var valid = true;

        $('.required').each(function () {
            if ($(this).val().length == 0) {
                alert('Please Enter your value');
                $(this).focus();

                valid = false;
            }
        });

        return valid;
    });   
});

编辑:哎呀,太晚了

于 2012-07-17T20:42:25.197 回答
0
     <script type="text/javascript">
         $('#submitRegister').click( function(){
         var validation =  $('#connect').vValidator('validate');
         Window.alert("hii");
         });
      </script>
于 2014-04-10T09:08:08.970 回答