首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >验证动态表单(单个字段、分组字段)

验证动态表单(单个字段、分组字段)
EN

Stack Overflow用户
提问于 2013-07-19 00:53:45
回答 2查看 79关注 0票数 0

我正在尝试创建一个带有jQuery验证的动态表单。所有用于验证的函数都已经设置好了,但我就是想不出如何解决这个问题。

假设我们有3个字段:

代码语言:javascript
运行
复制
<input .... class='validateme name' />
<input .... class='validateme email' />
<input .... class='validateme phone' />

现在使用jQuery,我使用validateme类遍历所有输入,并根据第二个类参数对它们进行验证(如果字段未通过验证,则在元素后面添加错误消息)。这很明显,但现在我想将最后两个字段分组:

代码语言:javascript
运行
复制
<input .... class='validateme name' />
<input .... class='validateme email grouped group_a' />
<input .... class='validateme phone grouped group_a' />

现在不同的是最后两个字段-只有一个字段需要正确填写。因为表单是动态的,用户可以自己创建组的名称,我只需要创建通用的jQuery函数,如果元素有grouped类,那么只需要其中一个字段正确即可。

可能会出现这样的情况:

代码语言:javascript
运行
复制
<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' />

如果你有任何想法来解决这个问题,那就太棒了:)。

EN

回答 2

Stack Overflow用户

发布于 2013-07-19 00:57:03

代码语言:javascript
运行
复制
if ( valid(name)) && (valid(email) || valid(phone)) ) ....
票数 0
EN

Stack Overflow用户

发布于 2013-07-19 00:57:57

假设你的函数在这里是通用的。您可以使用.hasClass()函数来查看元素是否具有该类

代码语言:javascript
运行
复制
$.each($('.validateme'),function(key,val)
{
    var groupedTrue = false;
    //some code

    if ($(val).hasClass('grouped') && isValid(key))
    {
         groupedTrue = true;
    }
}

使用此代码,您可以检查groupedTrue变量,以确保至少有一个分组的对象有效

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17729580

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档