2013-02-25 42 views
2

我想在我看来,使用jQuery UI日期选择器有以下日期字段ASP.NET MVC和jQuery的DatePicker

<div class="editor-field"> 
      @Html.EditorFor(model => model.CalibrationDate) 
      @Html.ValidationMessageFor(model => model.CalibrationDate) 
    </div> 

我已经包括所需的脚本和下面的函数

<script src="@Url.Content("~/Scripts/jquery-1.7.1.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/jquery-ui-1.8.20.js")" type="text/javascript"></script> 

<script> 
    $(document).ready(function() { 
     $('.date').datepicker({ dateFormat: "dd/mm/yy" } 
    }); 

看来我需要给我的日期分类

@Html.EditorFor(model => model.CalibrationDate) 

你能告诉我怎么做吗?或任何其他方法来获得此功能?


根据意见,这里是最后的工作代码:

<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery-1.5.1.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery-ui-1.8.11.min.js")" type="text/javascript"></script> 
<script type="text/javascript"> 
$(document).ready(function() { 
$(".date").datepicker(); 
}); 
</script> 

,并在体内

<div class="editor-label"> 
      @Html.LabelFor(model => model.CalibrationDate) 
     </div> 
     <div class="editor-field"> 

      @Html.TextBoxFor(m => m.CalibrationDate, new{ Class = "datepicker" }) 
      @Html.ValidationMessageFor(model => model.CalibrationDate) 
     </div> 
+1

这可能会回答你的问题。 [StackOver问题4576209] [1] [1]:http://stackoverflow.com/questions/4576209/asp-net-mvc-3-razor-adding-class-to-编辑 – JkenshinN 2013-02-25 13:12:42

+1

替代方式(编辑模板):http://www.nickharris.net/2010/08/asp-net-mvc-editor-template-for-jquery-datepicker/ – 2013-02-25 13:14:49

回答

2

您可以通过EditorFor匿名对象与类成员为additionalViewData参数。

@Html.EditorFor(model => model.CalibrationDate, new { @class = "date" }) 

注:在一个关键字前面使用一个@符号允许我们使用它作为标识符。