2011-09-10 36 views
2

我试图在用户单击我的表单按钮后检查我的输入字段的值,但它没有进入输入循环以检查必需的字段。这是否适用于点击事件?这是我打来的电话无法通过单击事件检查必填字段

$('#submit_button').click(function(){ 

    var formValid = true; 

    $(".required input").each(function(){ 
     if ($.trim($(this).val()).length == 0){ 
      $(this).addClass("error_msg"); 
      formValid = false; 
     } 
     else{ 
      $(this).removeClass("error_msg"); 
     } 
    }); 
    // post form if no errors are seen 

});

我输入HTML看起来像这样:

<input class="required" type="text" value="" name="test" id='test_id' size="80"/> 

我缺少什么?这似乎应该工作...

回答

4

尝试

$("input.required") 

,而不是

$(".required input") 

您可以用jQuery提交表单submit功能:

$('#submit_button').click(function(){ 

    var formValid = true; 

    $("input.required").each(function(){ 
     if ($.trim($(this).val()).length == 0){ 
      $(this).addClass("error_msg"); 
      formValid = false; 
     } 
     else{ 
      $(this).removeClass("error_msg"); 
     } 
    }); 

    if(formValid) $('#yourForm').submit(); 
    else return false; //if the button is a submit 
}); 
+0

这就是我想念的,谢谢! – Paul

1

使用$('input.required')代替。 如果您使用的是$('.required input'),则会在.required类中寻找任何input元素。在这种情况下,哪里就没有。