【发布时间】:2017-06-26 15:31:05
【问题描述】:
我想添加全球化,因为该网站要求用户提供日期。我的德国用户想输入“31.12.1966”而不是“1966-12-31”。
所以我添加了 nuget-Packages “jQuery.Validation.Globalize”和 “jquery-全球化” 到项目。
现在我无法配置我的 BundleConfig!根据我的研究,我知道我需要 globalize.js 和其他一些文件。所以我尝试制作一个捆绑包:
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.validate*"));
bundles.Add(new ScriptBundle("~/bundles/global").Include(
"~/Scripts/globalize.js",
"~/Scripts/cldr.js").IncludeDirectory("~/Scripts/cldr/",
"~/Scripts/globalize/")
);
视图中的使用:
...
@section Scripts {
@Scripts.Render("~/bundles/global")
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/unobtrusiveajax")
<script type="text/javascript">
$(function () {
$.validator.methods.date = function (value, element) {
Globalize.culture("de-DE");
// you can alternatively pass the culture to parseDate instead of
// setting the culture above, like so:
// parseDate(value, null, "en-AU")
return this.optional(element) || Globalize.parseDate(value) !== null;
}
});
</script>
}
但我得到一个错误:
Error at line 9, column 5 in http://localhost:58289/Scripts/jquery.validate.globalize.js
0x800a138f - runtimeerror in JavaScript:
The property "methods" of a undefindes or null-pointer can not bei called
我翻译了这个德语原文的信息:
Ausnahmefehler in Zeile 9, Spalte 5 in http://localhost:58289/Scripts/jquery.validate.globalize.js
0x800a138f - Laufzeitfehler in JavaScript:
Die Eigenschaft "methods" eines undefinierten oder Nullverweises kann nicht abgerufen werden.
我需要捆绑包中的更多/其他文件吗?
我能做什么?有什么帮助吗?
真诚的 彼得
【问题讨论】:
-
可以试试 Globalize 1.x(新版本)吗?
-
我使用 Glabalize 1.2.2
-
在 Globalize 1.x 上,没有
Globalize.culture。恐怕您正在使用 0.x API 和新的 1.x 库
标签: jquery asp.net-mvc-5 asp.net-mvc-validation jquery-globalize javascript-globalize