2012-12-25 66 views
0

我使用jQuery验证最初隐藏的表单最初隐藏表单,但表单提交,即使字段为空验证使用jQuery

$(document).ready(function() { 

    jQuery("#name").validate({ 
     expression: "if (VAL) return true; else return false;", 
     message: "* Please enter name" 
    }); 

}); 

我这样做是对的形式的AJAX submition ...

$("#send").click(function (e) { 
     e.preventDefault(); 
     var name = $('#name').val(); 
    $.ajax({ 

     // ajax submition 
     )}; 
}); 

回答

1

试试这个...并使用<form> id代替validate函数。

$(document).ready(function() { 
    jQuery("#formid").validate({ 
     ignore:'', 
     rules:{ 
      name:{ 
       required:true 
      } 
     }, 
     messages:{ 
      name:{ 
       required:'* Please enter name' 
      } 
     } 
    }); 
}); 

我想你使用的是更新版本的jQuery验证器插件,默认情况下会忽略隐藏的元素。

在回答你的更新问题你可以做到这一点

$("#send").click(function (e) { 
    e.preventDefault(); 
    var name = $('#name').val(); 

    if(name.length > 0){ //if length is greater than 0 then only fire ajax else show the error 
     $.ajax({ 

     // ajax submition 
     )}; 
    }else 
     //show error 
     alert('Name not found'); 
    } 
}