jQuery只验证可见的元素?

时间:2013-10-07 06:21:17

标签: jquery

在我的html页面中,我有24个字段,其class = "emi"

根据我页面上的下拉值,可以看到其中的6个,6个,12个,18个或24个。

现在我必须仅对可见的元素执行验证。

我使用jQuery的.hide().show()来隐藏和显示这些元素

4 个答案:

答案 0 :(得分:1)

试试这个..

// You will get array of visible controls by this code
var elementsToValidate = $('.emi:visible'); //or $('.emi').filter(':visible');
// perform validation using elementsToValidate

答案 1 :(得分:1)

你可以忽略像这样的隐藏元素

$("#myForm").validate({
  ignore: ":hidden",
   rules: {
    name: "required",
    age: "required",
    height: "required"
    }
 });

在此链接中 jquery validator - Validating visible elements only

你也可以使用not

这样做
$("#myForm").validate({ignore:":not(:visible)"});

答案 2 :(得分:0)

使用ignore选项并设置

$("#myform").validate({
    ignore: ".ignore"
});

OR

$("#myform").validate({
    ignore: ":hidden"
});

的jQuery验证。您可以在http://jqueryvalidation.org/validate/中找到它。

答案 3 :(得分:0)

这应该像

$("#myForm").validate({ignore:":not(:visible)"});

使用

not(:visible)

而不是":hidden"