2012-09-14 163 views
1

我想使用驗證插件,但我想它沒有正確設置。這是我的標題:JQuery驗證插件

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script> 
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.9/jquery.validate.min.js"></script> 
<title>Registration Page 2</title> 
<script type="text/javascript"> 
$(document).ready(function(e) { 
    $("#everything").submit(function() { 
     var data = $("#everything").serializeArray(); 
     $("#everything").validate({ 
      alert(data); 
     }); 
     return true; 
    }); 

}); 
</script> 
</head> 

但它不認可驗證方法,因此它不使用它。我應該使用不同的來源?任何人都可以看到任何問題

PS:反正有沒有在表格中的所有數據序列化到一個數組,所以我可以像

data["first_name"] 

我試過serializeArray並沒有引用它:

alert(data["first_name"]); 

但它表示它是未定義的。任何人都知道如何做到這一點?由於

回答

2

試試這個demo

<form id="commentForm"> 
    <div><input type="text" name="a" id="a" class='required'/></div> 
    <div><input type="text" name="b" id="b" class='required'/></div> 
    <div> 
    <input type="submit" name="g" value="Submit" id="everything" /> 
    </div> 
</form> 
$(document).ready(function(){ 
    $("#commentForm").validate({ 
    submitHandler: function(form) { 
       var dataArray = $("#commentForm").serializeArray(); 
       dataObj = {}; 
       $(dataArray).each(function(i, field){ 
        dataObj[field.name] = field.value; 
       }); 
       alert(dataObj['a']);     
     }  
    });    
    });​ 

您可以使用jQuery。每個函數來遍歷數組

.each

一個通用的迭代函數,可用於無縫地迭代 對象和數組。