3

我试图让 Globalize.js 库在 ASP.NET MVC 5 应用程序 + 不显眼的验证下工作。具体来说,我的大多数库和要求都按照帖子https://stackoverflow.com/a/25289555/1838819工作。但是,当验证实际上启动input标签type="text"但包含十进制数时,我收到以下错误;

Uncaught Error: E_MISSING_BUNDLE: {"locale":"en"}
at createError (cldr.js:339)
at validate (cldr.js:355)
at Cldr.main (cldr.js:669)
at numberNumberingSystem (number.js:450)
at numberPattern (number.js:1325)
at Function.Globalize.numberParser.Globalize.numberParser (number.js:1429)
at Function.Globalize.parseNumber.Globalize.parseNumber (number.js:1474)
at a.validator.methods.number (jquery.validate.globalize.min.js:1)
at a.validator.check (jquery.validate.min.js:4)
at a.validator.checkForm (jquery.validate.min.js:4)

我正在通过加载和配置库;

$.when($.get("/Scripts/cldr/supplemental/likelySubtags.json"))
    .done(function(result) {
        Globalize.load(result);
        Globalize.locale("en");
    });

在通过以下方式尝试验证之前,它可以正常工作并且运行良好;

$.validator.unobtrusive.parse(_form);
_form.validate();

if (_form.valid()) {    // ** error thrown here
    _uiModalConfirmForm.modal('toggle');
}

我几乎可以肯定我错过了load参考locale/en.json或非常相似的东西,但发现该资源似乎几乎是不可能的。cldr 的文档(Globalize 当前用作本地化数据的主要来源)的文档……充其量是自我引用的,而且导航起来非常令人沮丧。我也找不到特定的 NuGet 包。

我可以找到的文档说应该编译资源。查看该编译器的文档链接回 Gloablize 文档,并进一步了解如何启动测试服务器、安装 Node Package Manger 或 Bower 并从那里安装。当我想要的只是一个文件时,这……似乎有点矫枉过正。我还没有走这条路,因为我希望有一种更简单、更快捷的方法来定位所需的文件。

任何有关在 Visual Studio 中实际配置此库的资源的帮助将不胜感激。

4

0 回答 0