在局部視圖,i執行以下操作:ASP.NET MVC 5使用jQuery日期選擇器,不顯示時間,保持培養
@Html.TextBoxFor(m=> m.DateFrom, new{@class="datepicker"})
@Html.TextBoxFor(m=> m.DateTo, new{@class="datepicker"})
這是日期選擇器,在主視圖中定義:
@section scripts
{
<script type="text/javascript">
$('.datepicker').datepicker({
changeMonth: true,
changeYear: true,
minDate: "-99Y",
dateFormat: "@CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern.Replace("yyyy", "yy").ToLower()"
});
</script>
}
這有兩個問題:
1)兩個都datepickers默認爲0001-01-01 00:00:00 2)它們顯示了時間,如上所示。
我想我可以做這樣的事情解決#1:
[Display(Name = "MyOrdersControl_From", ResourceType = typeof (SiteTextResources))]
public DateTime DateFrom
{
get { return _dateFrom.HasValue ? _dateFrom.Value : new DateTime(1970, 1, 1); }
set { _dateFrom = value; }
}
private DateTime? _dateFrom;
但是,當我尋找解決方案,以消除時間,我看到的東西,如添加
[DataType(DataType.Date)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-mm-dd}")]
但不特這並沒有消除時間,它也覆蓋了我的文化敏感日期格式(我認爲?)。我已經看到建議將TextBoxFor更改爲EditorFor,它確實修復了時間問題,但確實會丟失datepicker綁定。以及有相同的文化問題。
怎麼辦?
的日期選擇具有您可以使用類似這樣的'日期選擇器({格式的格式屬性:「DD。 mm.yyyy'})' – trebor
我已經在使用format屬性。與CultureInfo一起。你是說我不應該? –