我有dateipicker的以下初始化代码,但是显示默认的“选择日期”链接,而不是图像。这是一个MVC项目,但这不应该影响我所知的任何事情。
$(function () {
$(".date-picker").datePicker({
showOn: 'both',
dateFormat: 'dd-mm-yy',
changeMonth: true,
changeYear: true,
showOn: 'button',
buttonImage: '<%= Url.Content("~/Content/images/date_picker2.gif") %>',
});
呈现的buttonImage
选项如下所示:
buttonImage: '/Content/images/date_picker2.gif',
像这样的img标签可以正确渲染图像:
<img src='<%= Url.Content("~/Content/images/date_picker2.gif") %>' />
答案 0 :(得分:3)
ProfK - 我在共享的EditorTemplate中使用了datepicker,我的代码与上面的代码非常相似。这是我在Views-&gt; Shared-&gt; EditorTemplates-&gt; DateTime.ascx:
下的内容<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<DateTime?>" %>
<%string name = ViewData.TemplateInfo.HtmlFieldPrefix;%>
<%string id = name.Replace(".", "_");%>
<div class="editor-label">
<%= Html.LabelFor(model => model) %>
</div>
<div class="editor-field">
<%= Html.TextBox("", (Model.HasValue ? Model.Value.ToString("dd-MM-yyyy") : string.Empty), new { @class = "date" }) %>
<%= Html.ValidationMessageFor(model => model)%>
</div>
<script type="text/javascript">
$(document).ready(function() {
$("#<%=id%>").datepicker({
dateFormat: 'dd-mm-yy',
changeMonth: true,
changeYear: true,
showOn: 'button',
buttonImage: '<%=Url.Content("~/Content/images/calendar.gif") %>'
});
});
</script>
[edit] - 在视图中使用:
<%= Html.EditorFor(m => m.StartDate) %>
试一试,看看它是否有帮助...
吉姆
答案 1 :(得分:2)
使用firefox并安装firebug扩展。并监控网络选项卡是否有任何错误。
答案 2 :(得分:1)
或者,如果有文本框,您只需执行此操作:
$('#datepickerImage').click(function() {
$('#datepickerTextBox').datepicker('show');
});