7

MVC3、EF4 プロジェクトを JavaScript 日付ピッカーで動作させようとしていますが、日付を英国形式 (dd/mm/yyyy) にしたいので問題が発生しています。

この問題の調査に数時間を費やし、このリンクで見たように「グローバル化」ライブラリ スクリプトを実装することにしました。

ただし、実行するとUncaught TypeError: Cannot read property 'methods' of undefined(行から)javascriptが取得され$.validator.methods.dateます。JavaScript に関する私の知識はかなり限られており、「globalize」ライブラリを使用するすべての例でこのエラーについて言及されていないため、非常に困惑しています。

以下のビューから関連するコードを示しました。

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-1.5.1.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.11.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.11.min.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.globalize/globalize.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.globalize/cultures/globalize.culture.en-GB.js")" type="text/javascript"></script>

<link href="../../Content/themes/base/jquery.ui.all.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
    Globalize.culture("en-GB");
    $.validator.methods.date = function (value, element) { return this.optional(element) || Globalize.parseDate(value); }
</script>

<script type="text/javascript">
    $(document).ready(function () {
        $('.date').datepicker({ dateFormat: "dd/mm/yy" });
    });
</script>

//SNIP

<div class="editor-field">
    @Html.TextBox("Expires", Model.Expires, new { @class = "date" })
    @Html.ValidationMessageFor(model => model.Expires)
</div>

誰かがこの問題を解決するのを手伝ってくれませんか。

どうもありがとう。

4

1 に答える 1