【问题标题】:jQuery Validation Plugin queryjQuery 验证插件查询
【发布时间】:2013-07-16 00:15:19
【问题描述】:

我一直在尝试向电话字段添加验证,以便它只接受 10 到 14 位数字(也欢迎使用其他更好的英国电话验证方法)。

我正在使用 jQuery 验证插件。

<form class="form" id="lg.callback.form" action="[[~[[*id]]]]" method="post">
    <input type="hidden" name="nospam:blank" value=""/>
    <label for="name"> Name: <span class="error">[[!+fi.error.name]]</span></label>
    <input id="name" type="text" name="name" value="[[!+fi.name]]" required />
    <label for="phone"> Phone: <span class="error">[[!+fi.error.phone]]</span></label>
    <input id="phone" type="text" name="phone" value="[[!+fi.phone]]" class="phone"/>

    <input type="submit" value="Request a call back"/>

</form>

<script>
    $("#lg.callback.form").validate();
</script>

我确实尝试了以下方法:

$("#lg.callback.form").validate({
   rules: {
     phone: {
       required: true,
       digits: true,
       minlength: 10,
       maxlength: 14
     }
   }
})

但它没有按预期工作。

建议将不胜感激。

【问题讨论】:

  • 您可以通过应用正则表达式来进一步锁定验证。如果你看的话,它在 jq 验证插件的文档中。开始寻找正则表达式的好地方是:regexlib.com/Search.aspx?k=uk%20phone
  • 严格执行此验证有什么好处?您应该尽量少打扰您的用户。人们知道他们输入了什么,他们仍然可以输入虚假数字。我喜欢输入带有国家代码(NL 中为 +31)的电话号码,并且中间有空格。

标签: jquery validation jquery-plugins jquery-validate


【解决方案1】:

尝试更改表单标签的 ID。 ID 不能包含特殊字符。

尝试给 ID 类似lgCallbackForm

更改 ID 后,您的代码工作正常。请使用您的代码检查此link

【讨论】:

  • 实际上,当我看到它并且它是允许的字符时,我只是查看了它:stackoverflow.com/questions/70579/…
  • 哦,我从另一个回复中看到它的 jquery 可能有问题,猜猜你指的是什么 :)
  • @rtpHarry 但是将它与 jQuery 一起使用可能会将其视为类。如 jquery lg.callback.form 表示选择器 lg 具有类回调和表单
猜你喜欢
  • 2011-04-22
  • 1970-01-01
  • 1970-01-01
  • 2012-02-23
相关资源
最近更新 更多