【问题标题】:jQuery Validation Form message positionjQuery 验证表单消息位置
【发布时间】:2011-06-29 13:11:30
【问题描述】:

这是我的验证方法的一部分:

...
 rules: {
           name: {
               required: true
           },
           surname: {
               required: true
           },
           tel: {
               required: true,
               digits: true
           }
      },
      errorElement: "div" ,
      errorPlacement: function(error, element) {   
        error.insertAfter(element)     
    }....

问题在于,当 validate 方法必须将消息放在表单上时,如果之前的错误消息存在,它不会删除它。所以我有例如这种情况(如果验证方法运行2次):

NAME:
HTML_TEXT_INPUT
ERROR1
ERROR2

当第二个错误在errorPlacement 中时,它不会删除之前的ERROR1。

我可以解决这个问题吗?

更新:在 jsFiddle http://jsfiddle.net/michelejs/Ax7Bs/ 中它可以工作,但在 http://mongolera.dyndns.biz/projects/regioni/form2.php 我有同样的问题!

会是什么?

【问题讨论】:

  • 我无法重现这个,你有没有机会使用this jsfiddle 作为基础来展示这种情况?

标签: jquery jquery-validate position message


【解决方案1】:

我很惊讶你能运行它,这是你的实现的一个问题:

这实际上导致验证脚本根本无法在您链接到的页面上的 FF5 上运行。

如果您能提供一个可行的示例,我很乐意提供更多反馈。

EDIT1:我看到这在 Chrome 中有效,但您仍然应该定义 container 或删除该行,您可能会看到问题消失了。

EDIT2:我看到您在页面上使用的是 1.5.2 版的验证插件,而 jsfiddle 使用的是 1.8 版。两个演示都使用 jQuery 1.6。

jQuery 1.6 和任何低于 1.8 的验证插件版本都存在已知问题,我建议您升级到最新版本,因为我在您提供的代码中没有看到任何明显的错误,正如您所看到的那样在小提琴中工作正常。这是当前验证插件的链接:

【讨论】:

  • 我已经删除了,但问题依然存在。:(
  • 例如,您可以尝试在电子邮件文件夹中插入类似“aaa”的字符串。进入电话文件夹并插入字母后。重复这2段就可以看出问题了
  • .............它有效!我简直不敢相信什么傻瓜! EDIT2 解决问题。坦克你韦斯利你是朋友!非常感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-27
  • 2014-11-08
  • 1970-01-01
相关资源
最近更新 更多