2011-12-28 52 views
0

使用jQuery 1.4.2版和驗證插件版本1.8.1jQuery的驗證插件,聲明所需的規則與屬性不工作

我如果複選框被選中,其僅需要一個文本框。 如果我的驗證方法聲明規則它的作品完美無瑕:

$("#tipoEntradasForm").validate({ 
    rules: { 
     cantidad_aforo: { required: "#aforo_limitado:checked" } 
    } 
}) 

但爲了簡單起見,我需要聲明它在輸入標籤的屬性。

我試過幾個變化,所有的人都像

<input 
    name="cantidad_aforo" id="cantidad_aforo" type="text" 
    class="anchofecha" 
    required="#aforo_limitado:checked" 
    min="1" 
    value="" 
/> 

,但沒有成功。

有人可以告訴我,如果我做錯了什麼,我該怎麼做呢?任何意見將不勝感激。

謝謝!

回答

0

輸入的屬性「需要」是不一樣的東西了jQuery驗證的方法。所以你不能這樣做。所以最初的代碼是獲得你想要的最簡單的方法。

0

試試這個

<input type="text" name="cantidad_aforo" id="cantidad_aforo" class="{ required: "#aforo_limitado:checked" }" min="1" value="" />

+0

我一直在跳,它會工作,但它不適用於鉻。我幾乎可以肯定,這是可能的! – Fernando

+0

這可能很愚蠢,但你檢查過報價? tetsujinsan

+0

是的,但它沒有工作。我甚至查看了驗證源代碼,並且發現了一行讀取'if(this in $ .validator.classRuleSettings)'(line 789 version 1.9.0),其中'this'採用了class屬性中單詞的形式, classRuleSettings是一個映射,它的條目如下:'required:{required:true}',所以...如果一個單詞匹配規則,它將被添加到規則數組中,並使用默認值。我認爲我可以創建自己的customRule將其添加到classRuleSettings,然後使用新規則或類似的東西。 – Fernando