我正在尝试创建一个带有jQuery验证的动态表单。所有用于验证的函数都已经设置好了,但我就是想不出如何解决这个问题。
假设我们有3个字段:
<input .... class='validateme name' />
<input .... class='validateme email' />
<input .... class='validateme phone' />
现在使用jQuery,我使用validateme类遍历所有输入,并根据第二个类参数对它们进行验证(如果字段未通过验证,则在元素后面添加错误消息)。这很明显,但现在我想将最后两个字段分组:
<input .... class='validateme name' />
<input .... class='validateme email grouped group_a' />
<input .... class='validateme phone grouped group_a' />
现在不同的是最后两个字段-只有一个字段需要正确填写。因为表单是动态的,用户可以自己创建组的名称,我只需要创建通用的jQuery函数,如果元素有grouped
类,那么只需要其中一个字段正确即可。
可能会出现这样的情况:
<input .... class='validateme email grouped group_a' />
<input .... class='validateme phone grouped group_a' />
<input .... class='validateme name grouped group_b' />
<input .... class='validateme name grouped group_b' />
如果你有任何想法来解决这个问题,那就太棒了:)。
发布于 2013-07-19 00:57:03
if ( valid(name)) && (valid(email) || valid(phone)) ) ....
发布于 2013-07-19 00:57:57
假设你的函数在这里是通用的。您可以使用.hasClass()函数来查看元素是否具有该类
$.each($('.validateme'),function(key,val)
{
var groupedTrue = false;
//some code
if ($(val).hasClass('grouped') && isValid(key))
{
groupedTrue = true;
}
}
使用此代码,您可以检查groupedTrue变量,以确保至少有一个分组的对象有效
https://stackoverflow.com/questions/17729580
复制相似问题