【问题标题】:jquery validate plugin, display one error at a time with cssjquery validate插件,使用css一次显示一个错误
【发布时间】:2011-05-19 13:57:33
【问题描述】:

我想知道如何使用 jquery,validator 插件在屏幕底部显示错误消息

还假设一次显示一个错误。

例如:-

名称:- 第一个错误将是名称
电子邮件:- 验证姓名后,将显示电子邮件的错误
网站:-最后是网站的错误。

以及如何将字段的文本框以相同的样式一一高亮:



如果名称为空白,则仅显示名称为空白,如果不是,则检查电子邮件并在该网站之后

我不知道整个编码会是什么样子。

请提供编码sn-p。

提前致谢

戴夫

【问题讨论】:

    标签: javascript jquery jquery-plugins


    【解决方案1】:

    试试这个:

    $("#myForm").validate({
        // Validation rules and messages go here
    
        showErrors: function(errorMap, errorList) {
            $("#myForm").find("input").each(function() {
                $(this).removeClass("error");
            });
            $("#myErrorContainer").html("");
            if(errorList.length) {
                $("#myErrorContainer").html(errorList[0]['message']);
                $(errorList[0]['element']).addClass("error");
            }
        }
    });
    

    这将在具有myErrorContainer ID 的元素中一次放置一个错误,同时将通过向其添加.error 类来突出显示导致错误的元素。

    希望这会有所帮助!

    【讨论】:

    • 感谢 FreeOne,代码 sn-p 正在工作,但假设一次显示一个错误,一旦第一次验证清楚,然后移动到其他验证,所有的高亮显示都发生了其中。
    • 是的,它一次只显示一个错误,但突出显示根本没有发生:(
    • @dave - 请查看更新后的答案。现在应该可以正常工作了。
    • @dave:很高兴能帮上忙! :)
    【解决方案2】:
    $("#myform").validate({
      wrapper: "li",
      errorPlacement: function(error, element) {
         error.appendTo('#errordiv' );
       },
       debug:true
     })
    

    将 errordiv 替换为 id 或 class 或您想要将错误放入的元素的任何选择器

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-11
      相关资源
      最近更新 更多