2017-10-17 34 views
2

我有startdateenddate列當我選擇日期小於或等於12它做工精細,但是當我選擇日期大於12,它給nul升值的ActionResult 。的DateTimePicker給空值的ActionResult時大於12 MVC 5

這是我正在使用的功能。

$(function() { 
    $('body').on("focus", ".datepicker", function() { 
     $('.datepicker').datetimepicker({ 
      format: 'MM-DD-YYYY' 
     }) 
    }) 
}); 

文本框從視圖中我選擇日期。

@Html.TextBoxFor(model => model.StartDate, new { placeholder = "MM-dd-yyyy", @class = "form-control datepicker" }) 
@Html.ValidationMessageFor(model => model.StartDate) 

並驗證此文本框。

[Required(ErrorMessage = "Start Date is required."), DataType(DataType.Date)] 
public Nullable<System.DateTime> StartDate { get; set; } 
[Required(ErrorMessage = "End Date is required."), DataType(DataType.Date)] 
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")] 
public Nullable<System.DateTime> EndDate { get; set; } 
+0

將服務器上的文化更改爲預期該格式日期的文化(或創建自定義ModelBinder) –

回答

1

裏面<system.web></system.web> ,加入這一行 <globalization culture="en-GB" uiCulture="en-GB" />

設置dd/MM/yyyy的文化en-GB和mm/dd/yyyy的文件設置爲012-。希望這可以幫助。

+0

感謝您的幫助。這項工作對我來說很好... –

1

在聲明的DateTimePicker你精確的格式MM-DD-YYYY(月 - 日 - 年),並在您使用DataFormatString = "{0:dd/MM/yyyy}"天/月/年的結束日期屬性。

均質所有的日期格式,使用相同的順序和相同的分離器,並在你的web.config文件中添加DataFormatString裝飾上也開始日期