首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >输入字段中的jQuery验证错误消息在焦点处消失。

输入字段中的jQuery验证错误消息在焦点处消失。
EN

Stack Overflow用户
提问于 2013-10-01 19:58:44
回答 2查看 3K关注 0票数 0

我在每个必需字段的输入字段中显示了jQuery验证错误消息。当用户试图输入有效的所需信息时,我不知道如何使消息消失。

例如,如果输入字段中出现错误消息为“输入您的名字”,而我试图在文本输入字段中键入我的真实姓名(如果是Steve),则从“输入您的史蒂夫”开始。

当我输入真实的信息时,我如何才能让错误信息消失?

这是小提琴

这是我的密码:

代码语言:javascript
运行
复制
<form id="lead">
<input type="text" name="first_name">
<input type="text" name="last_name">
<input type="email" name="email">
<input type="submit">

jQuery

代码语言:javascript
运行
复制
    $(function () {
    //Validation
    $('#lead').validate({
        rules: {
            first_name: {
                minlength: 2,
                required: true
            },
            last_name: {
                minlength: 2,
                required: true
            },
            email: {
                email: true,
                required: true
            }
        },
        errorPlacement: function (error, element) {
            element.val(error.text());
        },
        messages: {
            first_name: "Enter your first name",
            last_name: "Enter your last name",
            email: "Enter your email"
        },
        submitHandler: function (form) { // for demo
            alert('valid form submitted'); // for demo
            return false; // for demo
        }
    });

});
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-01 23:07:25

我不认为在jQuery验证中使用这些精确设置可以得到您想要的行为。

问题是您已经为您的名字输入设置了minlength: 2。在提交表单之前,验证不做任何操作。但是,在第一次提交并触发错误之后,它会在每次键击下重新评估的验证条件。所以你在名字输入中输入"S“,这会触发一个验证,因为minlength是< 2,所以触发用错误消息替换元素的值。

您可能更喜欢设置用于onkeyup:false验证的顶级选项jQuery,但它不会完全解决问题。

在这里看到它的工作方式不同:http://jsfiddle.net/ryleyb/3RBRp/8/

票数 0
EN

Stack Overflow用户

发布于 2013-10-01 20:07:27

为什么不使用占位符

他们应该能很好地达到你的目的

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

https://stackoverflow.com/questions/19124788

复制
相关文章

相似问题

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