【问题标题】:Using JSON for jQuery validator rules and messages将 JSON 用于 jQuery 验证器规则和消息
【发布时间】:2014-10-03 19:11:48
【问题描述】:

我在 http://jqueryvalidation.org 使用 jQuery Validate 插件。

典型的 jconfiguration 可能如下所示:

$(".selector").validate({
    rules: {
        name: "required",
        email: {
            required: true,
            email: true
        }
    },
    messages: {
        name: "Please specify your name",
        email: {
            required: "We need your email address to contact you",
            email: "Your email address must be in the format of name@domain.com"
        }
    }
});

我不想将规则和消息包含在我的 JavaScript 文件中,而是希望将它们包含在单独的 JSON 文件中。请注意,此问题不适用于使用远程方法。

是否有特定的方法可以做到这一点,或者我必须执行以下操作:

$.getJSON("getValidation.json", function(json) {
    $(".selector").validate(json);
});

我认识到如果规则需要回调,这种方法将不起作用,因为它会破坏 JSON。

【问题讨论】:

  • 你写的看起来应该可以工作。
  • 我不认为有任何预定义的方式来做你正在做的事情,你需要明确地获取 JSON。
  • @Barmar。还没有测试过,但我相信它会起作用。只是不知道是否有一些内置的方式这样做。不幸的是,在规则中需要回电的情况很少见。这样做时,我会在客户端剥离标签(没有想太多这是如何工作的),内置方法会很好。
  • 既然问题“不适用于使用remote方法”,那么也许你不应该直接链接到remote方法。
  • @Sparky 好点!我去那里了解他们是如何引用它的,并且无意中使用了这个链接。

标签: javascript jquery ajax json jquery-validate


【解决方案1】:

您的 JSON 无效,json 属性应该用引号括起来“规则”:{ “名称”:“必需”, “电子邮件”: { “必需”:是的, “电子邮件”:是的 } 但除此之外,它应该可以工作

【讨论】:

  • 同意,他们是。我向您展示的示例来自 jQuery Validator 文档。
  • OP 的代码是 100% 正确的,因为它在 .validate() 方法中使用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-29
  • 2014-06-09
  • 1970-01-01
相关资源
最近更新 更多