如何使用 Globalize.js 在 ASP.NET Core MVC 中为客户端验证配置文化
How to use Globalize.js to configure culture for client side validation in ASP.NET Core MVC
我很难在我的应用程序中配置客户端验证。我希望它能够接受本地化的 pt-BR
输入。
我尝试在启动时使用配置应用程序:
var locale = "pt-BR";
RequestLocalizationOptions localizationOptions = new RequestLocalizationOptions {
SupportedCultures = new List<CultureInfo> { new CultureInfo(locale) },
SupportedUICultures = new List<CultureInfo> { new CultureInfo(locale) },
DefaultRequestCulture = new RequestCulture(locale)
};
它适用于在服务器端呈现货币、日期时间和数字,但客户端验证仍需要 en-US
输入。
客户端正在使用 jquery.validate
和 jquery.validate.unobtrusive
然后我被建议使用 Globalize.js.
我通过 npm 安装了 globalize npm instal globalize@1.0.0
它添加了 globalize 包和 cldr.js
包。并将jquery.validate.globalize.js
下载到项目
我在 HTML
中添加了对 js 文件的引用
<!-- cldr scripts (needed for globalize) -->
<script src="~/lib/cldrjs/dist/cldr.js"></script>
<script src="~/lib/cldrjs/dist/cldr/event.js"></script>
<script src="~/lib/cldrjs/dist/cldr/supplemental.js"></script>
<script src="~/lib/cldrjs/dist/cldr/unresolved.js"></script>
<!-- globalize scripts -->
<script src="~/lib/globalize/dist/globalize.js"></script>
<script src="~/lib/globalize/dist/globalize/number.js"></script>
<script src="~/lib/globalize/dist/globalize/date.js"></script>
<!-- Validation -->
<script src="~/lib/jquery.validate.globalize.js"></script>
但不幸的是,当我尝试选择位置时出现此错误 Globalize.locale("pt-BR")
E_MISSING_CLDR: Missing required CLDR content supplemental/likelySubtags
.
我错过了什么?
您需要使用 Globalize.load
加载 CLDR 数据。请参阅 https://github.com/globalizejs/globalize/blob/master/doc/cldr.md
我很难在我的应用程序中配置客户端验证。我希望它能够接受本地化的 pt-BR
输入。
我尝试在启动时使用配置应用程序:
var locale = "pt-BR";
RequestLocalizationOptions localizationOptions = new RequestLocalizationOptions {
SupportedCultures = new List<CultureInfo> { new CultureInfo(locale) },
SupportedUICultures = new List<CultureInfo> { new CultureInfo(locale) },
DefaultRequestCulture = new RequestCulture(locale)
};
它适用于在服务器端呈现货币、日期时间和数字,但客户端验证仍需要 en-US
输入。
客户端正在使用 jquery.validate
和 jquery.validate.unobtrusive
然后我被建议使用 Globalize.js.
我通过 npm 安装了 globalize npm instal globalize@1.0.0
它添加了 globalize 包和 cldr.js
包。并将jquery.validate.globalize.js
下载到项目
我在 HTML
中添加了对 js 文件的引用<!-- cldr scripts (needed for globalize) -->
<script src="~/lib/cldrjs/dist/cldr.js"></script>
<script src="~/lib/cldrjs/dist/cldr/event.js"></script>
<script src="~/lib/cldrjs/dist/cldr/supplemental.js"></script>
<script src="~/lib/cldrjs/dist/cldr/unresolved.js"></script>
<!-- globalize scripts -->
<script src="~/lib/globalize/dist/globalize.js"></script>
<script src="~/lib/globalize/dist/globalize/number.js"></script>
<script src="~/lib/globalize/dist/globalize/date.js"></script>
<!-- Validation -->
<script src="~/lib/jquery.validate.globalize.js"></script>
但不幸的是,当我尝试选择位置时出现此错误 Globalize.locale("pt-BR")
E_MISSING_CLDR: Missing required CLDR content
supplemental/likelySubtags
.
我错过了什么?
您需要使用 Globalize.load
加载 CLDR 数据。请参阅 https://github.com/globalizejs/globalize/blob/master/doc/cldr.md