我的错误:
Uncaught TypeError: $(...).datepicker is not a function
我将 jquery bundle 引用放在布局的 head 部分,以确保它在 javascript 函数之前加载。我做了一个查看源代码,但没有看到超过 1 个对 jquery 的引用。 jquery 版本是 2.1.4。有什么想法吗?
我的看法:
<script type="text/javascript">
$(function() {
$('.date-picker').datepicker({
changeMonth: true,
changeYear: true,
showButtonPanel: true,
dateFormat: 'MM yy',
onClose: function(dateText, inst) {
var month = $("#ui-datepicker-div .ui-datepicker-month :selected").val();
var year = $("#ui-datepicker-div .ui-datepicker-year :selected").val();
$(this).datepicker('setDate', new Date(year, month, 1));
}
});
});
</script>
<div class="form-group">
@Html.LabelFor(model => model.CCExpiration, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.CCExpiration, new { htmlAttributes = new { @class = "form-control date-picker" } })
@Html.ValidationMessageFor(model => model.CCExpiration, "", new { @class = "text-danger" })
</div>
</div>
_布局
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title - Vibe Productions Corporation</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/bootstrap")
</head>
Bundles.cs
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js",
"~/Scripts/jquery-ui-1.11.4/jquery-{version}.js"));
最佳答案
目前你只是引用了 jQuery UI 包中的 jQuery 库
"~/Scripts/jquery-ui-1.11.4/jquery-{version}.js"));
这应该是:
"~/Scripts/jquery-ui-1.11.4/jquery-ui.js"));
关于javascript - jquery datepicker 错误不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34458509/