首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >用jQuery自动验证表单

用jQuery自动验证表单
EN

Stack Overflow用户
提问于 2013-01-29 09:36:43
回答 3查看 1.9K关注 0票数 0

我编写了以下代码来验证表单:

代码语言:javascript
运行
复制
$('form').submit(function() {
    $.each($(this).find('.required'), function(i,d){
        var lName = '#'+$(d).attr('for'); 
        if (!$(lName).val()) {
            $('html, body').animate({ scrollTop: $(d).offset().top }, 'slow');
            $(d).css({'color': '#ff0954'});
            if ($(lName).attr('class') == 'ckeditor') {

            }else{
                for(i=0;i<3;i++) {
                    $(lName).fadeTo('fast', 0.5).fadeTo('fast', 1.0);
                }
            }
            return false;
        }
    });
});

我的代码将在带有label类名的reqiured标记中进行搜索,并验证字段。

一切似乎都很好,但我有一些问题:

  1. 当字段有问题时,我使用return false;,但表单将被提交。
  2. 我不能在focus上使用ckeditor
  3. 我无法验证radiocheckboxselect标记
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-01-30 16:30:04

感谢@Sparky,我将使用我从零开始编写的jQuery验证插件实例:http://docs.jquery.com/Plugins/Validation

票数 0
EN

Stack Overflow用户

发布于 2013-01-29 16:20:21

1

尝试在每个循环之前将一个变量设置为true。然后,在返回false的地方,将该变量设置为false。循环结束后,检查该变量,如果为false,则返回false。您现在正在对每个函数返回false,您需要在提交时这样做。

所以就像这样:

代码语言:javascript
运行
复制
$('form').submit(function() {
    var valid = true;
    $.each($(this).find('.required'), function(i,d){
        // all your checks
        // if your checks are bad
        valid = false;
    });
    if (valid === false) {
        return false;
    }
}); 

2

什么是ckeditor?我们能看看你的完整htmll吗?

3.

你想验证什么?@sparky的评论可能是正确的答案。

票数 0
EN

Stack Overflow用户

发布于 2013-01-29 16:22:43

用这个..。

代码语言:javascript
运行
复制
$('#myForm').on('submit', function(){
    $("#myForm").validate();
});

在这里jQuery验证文档

问候..。

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

https://stackoverflow.com/questions/14579700

复制
相关文章

相似问题

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