如何解决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 举报,一经查实,本站将立刻删除。