好吧,所以我试图从必须输入手动日期和时间切换到使用jquery来选择日期和时间。
我认为这太难了。
我的观点:
<%= Html.LabelFor(x => x.DDate) %>
<%= Html.EditorFor(x => x.DDate) %>
<%= Html.ValidationMessageFor(x => x.DDate)%> <br />
我的Site.Master(我也使用它:http://trentrichardson.com/examples/timepicker/):
<script type="text/javascript" src="/Content/jquery-1.4.4.min.js"></script>
<script type="text/javascript" src="/Content/jquery-ui-1.8.6.custom.min.js"></script>
<script type="text/javascript" src="/Content/jquery-ui-timepicker-addon.js"></script>
<script type="text/javascript">
$('.dp').datetimepicker({
ampm: true
});
</script>
DateTime.ascx:
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.DateTime?>" %>
<%= Html.TextBox("", String.Format("{0:MM-dd-yyyy}", Model.HasValue ? Model : DateTime.Today), new { @class = "dp"})%>
现在我知道有些事情在我加载页面时工作正常,有一个日期预设与今天的日期。
然而,当我点击文本框时,NOTHING显示出来。
有没有人知道我做错了什么?
答案 0 :(得分:3)
在操作之前尝试等待文档准备就绪,否则在执行$('.dp')
选择器时,尚未加载相应的元素:
<script type="text/javascript">
$(function() {
$('.dp').datetimepicker({
ampm: true
});
});
</script>
另一种可能性是在文档末尾移动此脚本(在结束</body>
之前)。这样您就不再需要将其包装在document.ready
处理程序中。