2010-03-17 58 views
3

我有几个复选框具有相同的名称,最后一个复选框基本上是“其他”,旁边有一个空文本字段。我正在使用jQuery验证,并且我想在选中其他复选框时使空文本字段成为必需。仅当选中复选框时才验证jquery字段

不知道如何做到这一点与checboxes都具有相同的名称。

谢谢。

回答

0

您可以选择所有这些复选框,并使用:last - 选择器(http://api.jquery.com/last-selector/)或您选择inputfield并通过与$(".myOtherInput").prev() DOM中去,如果它是直接在你的领域面前。之后,您可以绑定功能来添加或删除class="required"

+0

我怎么捎带:最后和:一起检查?我发现这个(http://docs.jquery.com/Plugins/Validation/Methods/required#dependency-expression),这里是我的代码,但它不工作: $(“#4_observerstxt”)。rules(“add “,{ 要求:”#4_observers:last:checked“ }); (“#4_observers:last”)。click(function(){(#4_observerstxt))。valid(); }); – jethomas 2010-03-30 15:40:41

2

复选框具有相同的名称,但具有不同的值。所以你可以找到选中的,然后检查一个特定的值。我用单选按钮做了类似的事情。这是我的规则之一,如果重复模式单选按钮的值为'day',则需要daypattern字段。

 daypattern: { 
      required: 
       function(element){ 
        return ($("input[name='recurpattern']:checked").val() == 'day') 
       } 

     } 

在你的情况,你的复选框集在yourcheckboxes.val()中有一个数组。所以你检查你的测试值是否在这个数组中。

相关问题