微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JQuery验证插件:如何使错误消息成为错误标签中的属性?

如何解决JQuery验证插件:如何使错误消息成为错误标签中的属性?

| 现在,我已经有了验证插件显示带有两个背景图像之一的标签,具体取决于该字段是否有效。但是,错误文本仍插入到“无效”标签中(认情况下,“有效”标签没有任何错误消息)。 我想删除显示在“无效”错误标签上的文本,并将其放置在标签内作为属性值。这样,我可以使用工具提示插件将其显示为鼠标悬停时的工具提示。 问题是,我不知道该怎么做。 我知道我必须“拦截”消息验证器选项中的错误消息以阻止它们出现。该选项可以为给定要求提供函数,该函数返回错误字符串(我将其设置为\“ \ ”)。但是(据我所知),我无法从那里访问错误标签对象来将消息作为属性插入。该选项的描述指出该函数将\“ the element \”作为第二个参数,但是我不确定这是否意味着DOM元素或JQuery.val规则元素:   讯息:      定义自定义的键/值对   消息。键是名称   元素,重视要显示的消息   而不是简单的   向其他地图发送具体的消息   可以使用每个规则的消息。   覆盖的标题属性   元素或认消息   方法(按此顺序)。每条消息   可以是字符串或回调。的   回调在   验证者和规则的   参数作为第一个和   元素作为第二种装饰,它   必须返回一个字符串以显示为   信息。 我以为这是字段DOM元素,并尝试执行以下操作:
 //#createAccount is the id for the form
 messages: {
               eMail: {
                   required: function(param,element){
                       $(\"#createAccount label[class=\\\"error\\\"][for=\" + element.getAttribute(\"name\") + \"]\")
                       .attr(\"message\",\"required\"); return \"\";},email: function(param,\"Not valid email\"); return \"\";}
                    }
           },success: \"valid\"
    ...
    ...
但是由于某种原因,它操纵了成功验证器选项,我用它来选择要显示的背景图像。因此,它标明了不应该做的事情。 我只是想知道这是否是正确的方法,或者是否有更简单的方法     

解决方法

好的,我找出了问题所在。看来,如果您提交一个空字符串(\“ \”)作为元素的消息,则插件将使用该字符串表示该字段有效。因此,只要您返回\“ \”或\'\'以外的任何内容(我最终返回的是\“ \\ 0 \”,这不是可打印的字符),您就可以执行该函数内的操作。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。