在mvc上使用日期选择器不起作用

using datepicker on mvc doesnt work

本文关键字:日期 选择器 不起作用 mvc      更新时间:2024-03-03

我想使用日期选择器,我看到了这个简单的页面

http://jqueryui.com/datepicker/

我下载了这两个jquery文件

http://code.jquery.com/jquery-1.9.1.js并将其放入GoogleDatePicker1.js

http://code.jquery.com/ui/1.10.3/jquery-ui.js并将其放入GoogleDatePicker2.js

我下载了这个css文件

http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css并将其放入datePickerCSS.css

我把这些文件像这个一样添加到我的项目中

@section scripts {
    @Scripts.Render("~/bundles/jqueryval")
    @Scripts.Render("~/Scripts/functions.js")
    @Scripts.Render("~/Scripts/GoogleDatePicker1.js")
    @Scripts.Render("~/Scripts/GoogleDatePicker2.js")
}
@Styles.Render("~/css/datePickerCSS.css")

functions.js是:

$(document).ready(function () {
    $(".datepicker").click(function () {
        datepicker();
    });
});

我的html是:

@Html.TextBoxFor(x => x.startDate, new { placeholder = "mm/dd/yyyy", @class = "datepicker" })

但当我点击这个文本框时,googlechrome告诉我日期选择器没有定义。

我在datepicker()函数之前发出警报,它正在工作

有什么帮助吗?()

您需要将日期选择器分配给元素:

$(document).ready(function () {
    $(".datepicker").datepicker();
});

您在哪里定义要调用的函数datepicker()

看起来你使用插件不正确。考虑文档中的示例:

$(function() {
    $( "#datepicker" ).datepicker();
});

您要做的是在单击日期选择器时初始化。这是不正确的。您应该在页面加载时对其进行初始化,然后插件本身将处理点击事件。类似这样的东西:

$(function() {
    $(".datepicker").datepicker();
});

您可能想要这样的东西:

$(function() {
  $(".datepicker").datepicker();
});