怎么让jquery.validate.js 只显示第一个错误信息,将第一个错误信息放在指定标签中?

 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励30(财富值+成长值)
eadio
2015-08-01 · TA获得超过1610个赞
知道小有建树答主
回答量:962
采纳率:80%
帮助的人:1018万
展开全部
这个你在要展示错误信息位置先加个定位符(div id="err")
然后当验证不通过的时候把信息填充进去
$("#err").append(error)这样信息就能在那地方显示了
更多追问追答
追问
我是想如果有多于一个的错误,让它只显示第一个。请问怎么搞呢?
我是想如果有多于一个的错误,让它只显示第一个。请问怎么搞呢?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小码null
2016-03-11
知道答主
回答量:7
采纳率:0%
帮助的人:6256
展开全部
条件:错误的容器,我这里是ol

原因 : 我把所有的错误都放在这个ol里
当出现多条错误信息,就会生成多条li标签

问题:那么我只想显示第一个li标签的错误信息,怎么办?

解决思路:保留第个li删除其它li标签即可!

现象:假如我有这里一个元素没符合我的规则时,
validate就会在我指定错误标签(ol)下生成一个li,
如果此元素通过验证规则,生成的的li,不会删除 而是隐藏!
该现象不符合我解决思路!
下面贴代码:
errorLabelContainer:".erro",
wrapper:"li",
showErrors:function(errorMap,errorList) {
this.defaultShowErrors();
$('ol li:hidden').remove()//删除所有隐藏的li标签
$('ol li:eq(0)').nextAll().remove()//第一个li下所有跟随的同胞级li删除

},
就这样的代码可以 实现 永远只显示第一个错误信息!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
心里的白开水
2018-12-19
知道答主
回答量:1
采纳率:0%
帮助的人:794
展开全部
$(".form").validate({
    showErrors: function(errorMap, errorList) {
        if(errorList.length != 0) {
            //这两个参数一打印出来你应该就能看懂了
            console.log(errorMap)
            console.log(errorList)
            var parent = $(errorList[0].element).parents(".inputParents");
            if(parent.find("label.error").size() > 0) {
                parent.find("label.error").remove();
            }
            var errorLable = '<label for="'+errorList[0].element.name+'" class="error">'+errorList[0].message+'</label>'
            parent.append(errorLable);
        }
    },
})
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
莫思念1314
2017-02-23
知道答主
回答量:2
采纳率:0%
帮助的人:2275
展开全部
看文档啊,很简单
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式