实现Jquery Datetimepicker
我正在尝试将JQuery Datetimepicker实现到我的MVC应用程序中。 我已将所有引用添加到此但仍然抛出错误
GET http://localhost:53987/Home/assets/img/demo/m2.jpg 404
(未找到)
未捕获的TypeError:$不是函数
_Layout.cshtml
代码
!DOCTYPE html> @ViewBag.Title - Arion Pedigrees @Styles.Render("~/Content/css") @Scripts.Render("~/bundles/modernizr") - Reports
- @Html.ActionLink("AA", "Index", "Home")
- @Html.ActionLink("BB", "Index", "Home")
@RenderBody() @Scripts.Render("~/bundles/jquery") @Scripts.Render("~/bundles/bootstrap") @RenderSection("scripts", required: false)
这个代码:
@Html.TextBoxFor(m => m.StartDate, new { @class = "form-control"}) @Html.TextBoxFor(m => m.FinishDate, new { @class = "form-control" })
然后是JavaScript代码:
$.noConflict(); $(document).ready(function () { $("#StartDate").datepicker({ numberOfMonths: 1, onSelect: function (selected) { $("#FinishDate").datepicker("option", "minDate", selected) } }); $("#FinishDate").datepicker({ numberOfMonths: 1, onSelect: function (selected) { $("#StartDate").datepicker("option", "maxDate", selected) } }); });
有人请指导我。 我不明白我哪里错了。 相同的代码适用于我的另一个应用程序。 任何帮助都非常感谢。
因为你在@RenderBody()
之后的Layout.cshtml
文件中有@Scripts.Render("~/bundles/jquery")
,所以你包含了jQuery-{version}.js
(你的包中的@RenderBody()
的副本jquery-ui.js
脚本在你的视图中,它擦除了jquery-ui
。
删除jquery-1.12.4.js
脚本和$.noConflict();
视图中的代码行,并将所有脚本包装在@section scripts
中的视图中,以便以正确的顺序加载脚本。
@section scripts { }
请注意,因为布局中的bundle和@RenderSection("scripts", required: false)
紧跟在结束
标记之前,所以不必将脚本包装在$(document).ready(function () {
。
此外,您应该将jquery-ui.css
文件移动到样式部分。
在布局中,在@Styles.Render("~/Content/css")
并在视图中添加@RenderSection("styles", false)
@section styles { }
你正在调用$.noConflict()
将jQuery与$ var解除关联,这就是为什么,只是删除它
Interesting Posts