jQuery UI DatePicker图像不显示
我有以下日期选择器的init代码,但显示默认的“选择日期”链接,而不是图像。这是在一个MVC项目中,但这应该不会影响我所知的任何事情。jQuery UI DatePicker图像不显示
$(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") %>' />
ProfK - 我使用共享EditorTemplate内的日期选择器和我的代码看起来与上面非常相似。这里就是我的下视图 - > Shared-> EditorTemplates-> 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>
[编辑] - 使用鉴于:
<%= Html.EditorFor(m => m.StartDate) %>
试一试,看它是否帮助了任何...
jim
你有'showOn'定义两次;) – 2010-07-13 10:38:38
哎呀,所以我有! - 修正了 – 2010-07-13 10:39:06
感谢@jim,你的EditorTemplate工作得很好,但是昨天很快,jQuery部分没有,所以被委托给主页面。我今天晚些时候再检查一次。 – ProfK 2010-07-14 07:14:21
或者,如果有一个文本框,你可以简单地这样做:
$('#datepickerImage').click(function() {
$('#datepickerTextBox').datepicker('show');
});
其日期选择器是您使用? jQuery UI的一个是'.datepicker()'...所以你的代码现在甚至不应该工作,确保你发布你的实际代码。 – 2010-07-13 10:36:37
有多奇怪。我从某处获取datePicker功能。 – ProfK 2010-07-13 10:58:33
啊哈,我还有其他datepicker脚本的引用。我轻率地认为从我的项目中删除脚本就足够了,但显然他们仍然缓存在客户端。 – ProfK 2010-07-13 11:26:35