Элемент календаря PickADate не работает должным образом - PullRequest
0 голосов
/ 14 июня 2019

Я использую шаблон администратора для своего проекта MVC. Этот шаблон администратора интегрирован с JavaScript-кодом pickadate. Я встраиваю элемент управления календаря в @ HTML.EditorFor. Когда страница загружается, элемент управления загружается нормально, а также отображается календарь. Но он загружается странным образом. Прежде всего, если я свяжу элемент управления с датой, например - Я хочу показать 14/06/2019 в поле редактора, когда страница загружается и, если пользователь хочет, он может изменить элемент управления из календаря. Дата также загружается, но когда появляется календарь ** Год выбран на 100 лет назад **, где датой по умолчанию для элемента управления должна быть сегодняшняя дата.

Если я пытаюсь отладить это из средств разработчика, я всегда получаю это сообщение об ошибке -

Uncaught TypeError: Cannot read property 'get' of undefined at pick-a-datetime.min.js:1

Я не новичок в MVC, но JavaScript всегда создает проблемы для меня. Я перепробовал все форумы по проблемам PickADate, но не нашел решения. Если кто-то может объяснить, это будет очень полезно.

Вот так я загружаю ресурсы JS в свой файл Bundle -

bundles.Add(new ScriptBundle("~/bundles/jquery").Include(

           //*START* VENDOR MAIN
           "~/XXXXX_ADMIN/app-assets/vendors/js/vendors.min.js", /*this is what breaks the autocomplete OG*/
           //*END* VENDOR MAIN

//*START* CORE
"~/XXXXX_ADMIN/app-assets/js/core/app-menu.min.js",
"~/XXXXX_ADMIN/app-assets/js/core/app.min.js",
//*END* CORE


//*START* PICKERS
"~/XXXXX_ADMIN/app-assets/vendors/js/pickers/pickadate/picker.js",
"~/XXXXX_ADMIN/app-assets/vendors/js/pickers/pickadate/picker.date.js",
"~/XXXXX_ADMIN/app-assets/vendors/js/pickers/pickadate/picker.time.js",
"~/XXXXX_ADMIN/app-assets/vendors/js/pickers/pickadate/legacy.js",
"~/XXXXX_ADMIN/app-assets/vendors/js/pickers/dateTime/moment-with-locales.min.js",
"~/XXXXX_ADMIN/app-assets/vendors/js/pickers/daterange/daterangepicker.js",
//*END* PICKERS

//*START* PICKERS
"~/XXXXX_ADMIN/app-assets/js/scripts/pickers/dateTime/pick-a-datetime.min.js",
//*END* PICKERS

bundles.Add(new ScriptBundle("~/custom/defaultJquery").Include(
           "~/XXXXX_ADMIN/app-assets/js/core/libraries/jquery.min.js",
           "~/XXXXX_ADMIN/app-assets/js/core/libraries/jquery_ui/jquery-ui.min.js"));

Я добавляю ссылку на мою страницу _Layout -

<body>
    @Scripts.Render("~/bundles/jquery")
    @RenderSection("scripts", required: false)
</body>

КОД для отображения даты в MVC View

<div class="form-group">
    @Html.EditorFor(model => Model.Employee.FirstOrDefault().DateJoin, new { htmlAttributes = new { @class = "pickadate form-control validate[required]", @style = "background-color:white;" } })
</div>

Так выглядит календарь после загрузки

Ошибка JS в инструментах разработчика

Выбранный раздел является частью ошибки в файле JS

...