2011-04-21 179 views
3

我試圖使用jQuery驗證插件來驗證類而不是ID。儘管有許多線索似乎接近回答這個問題 - 我無法讓他們中的任何一個人工作。我只是擁有一個擁有大量動態生成的重複表單字段的表單,所以自然不能爲ID添加規則,因爲不知道其中會有多少個表單。所以,相反,我想只在輸入字段中定位該類。JQuery驗證插件 - 無法驗證類

<input type="text" id="name1" class="fileName" /> 
<input type="text" id="name2" class="fileName" /> 
<input type="text" id="name3" class="fileName" /> 
<input type="text" id="name4" class="fileName" /> 

我該如何定位'fileName'類?我已經試過這樣:

$(document).ready(function(){ 
    $.validator.addClassRules({ 
     fileName:{ 
     required: true 
    } 
    }); 
    $("#myForm").validate(); 
}); 

但是,這並不在所有的工作:(

任何想法,任何人都

+0

你的表單的其餘部分在哪裏? – mcgrailm 2011-04-21 18:56:42

回答

-3

什麼:??

$(".fileName").validate(); 
+2

在窗體元素上調用'validate' ...這將如何工作? – 2011-04-21 18:56:31

9

你需要指定一個name屬性,每個input元素用於驗證器將其拾取:

<form action="#"> 
    <input type="text" id="name1" class="fileName" name="name1" /> 
    <input type="text" id="name2" class="fileName" name="name2"/> 
    <input type="text" id="name3" class="fileName" name="name3"/> 
    <input type="text" id="name4" class="fileName" name="name4"/> 
</form> 

這裏有一個工作示例:http://jsfiddle.net/Nbcj9/

+0

btw輸入不應該沒有父母的形式8 ^) – mcgrailm 2011-04-21 18:59:16

+0

@mcgrailm:同意,我只是假設OP有他們的形式:) – 2011-04-21 19:02:01

5

根據該文檔,這應該工作:通過調用

jQuery.validator.addClassRules('classNameHere', { 
    required: true 
}); 

然後你就可以判斷字段是否有效:

$('.fileName').valid(); 

這裏有一個鏈接到the docs

+0

類名不應該以句號開頭。 – CharliePrynn 2013-09-16 15:26:39

+0

你是對的,謝謝。 – 2014-05-08 15:25:56