2011-05-26 55 views
0

我有一个MVC3应用程序, 我知道,对于相对路径,我可以在我的.aspx视图中使用Url.Content。如何在jQuery和MVC中处理相对路径,例如DatePicker

但是,如何在jQuery中做类似的事情?我正在看的是jquery-ui datepicker,例如我有我的datetimem DateTime.ascx以下EditorTemplate:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<System.DateTime>" %> 
    <%: Html.TextBox("", this.Model.ToString("MM/dd/yyyy"), new { @class="datepicker"}) %> 

    <script type="text/javascript"> 

    $(document).ready(function() { 
     $(".datepicker").datepicker({ 
      changeMonth: true, 
      changeYear: true, 
      dateFormat: 'mm/dd/yy', 
      gotoCurrent: true, 
      showOn: 'button', 
      buttonImageOnly: true, 
      buttonImage: '../../../Content/images/calendar.png' // WHAT DO I PUT HERE? 
     }); 

    }); 
    </script> 

感谢,

回答

3

为什么你认为这是不是问题的答案?

<%= Url.Content("/Content/images/calendar.png") %>

+0

我不认为这是可行的(但我测试,它也!),例如buttonImage:'<%= Url.Content(“〜/ Content/images/calendar.png”)%>'...是不是Url.Content MVC特定?所以如果我想在非MVC应用程序中重用这个库,我会遇到麻烦,不是吗? – Raymond 2011-05-26 22:54:13

1

您可以简单地使用

<script type="text/javascript"> 
$(document).ready(function() { 
$(".datepicker").datepicker({ 
    changeMonth: true, 
    changeYear: true, 
    dateFormat: 'mm/dd/yy', 
    gotoCurrent: true, 
    showOn: 'button', 
    buttonImageOnly: true, 
    buttonImage: '@Url.Content("~/Content/images/calendar.png")' 
}); 
}); 
</script> 
+0

这对我不起作用,但另一篇关于使用'<%= Url.Content(“blah”)%>'的帖子没问题。 – Raymond 2011-05-26 22:57:20

+0

我在回答中使用了剃须刀。新MVC3项目默认使用剃须刀,所以当我阅读MVC3时,我认为它是剃须刀。 – Luuk 2011-05-27 06:52:21

+0

这个在MVC5中适用于我 - 我还认为它也适用于MVC3。 – Yatin 2017-06-27 22:57:17