2013-10-09 90 views
2

我正在使用MVC項目,並使用jquery datepicker我在帖子中有問題。 我使用了包含文本框和jquery函數的局部視圖。就像這樣:爲什麼jquery datepicker將幾個月改爲幾個月?

@model Nullable<System.DateTime> 
<div class="row-fluid input-append"> 
    @if (Model.HasValue && Model.Value != DateTime.MinValue) 
    { 
     @Html.TextBox("", String.Format("{0:dd/MM/yyyy}", Model.Value), new { @class = "input-small date-picker",@readonly = true, style = "cursor:pointer; background-color: #FFFFFF; text-align: center;" }) 
    } 
    else 
    { 
     @Html.TextBox("", String.Format("{0:dd/MM/yyyy}", ""), new { @class = "input-small date-picker", @readonly = true, style = "cursor:pointer; background-color: #FFFFFF; text-align: center;" }) 
    } 
</div> 

@{ 
    string name = ViewData.TemplateInfo.HtmlFieldPrefix; 
    string id = name.Replace(".", "_"); 
} 

<script type="text/javascript"> 
    $('#@id').datepicker({ 
     dateFormat: 'dd/mm/yy', 
     todayHighlight: true, 
     clearBtn: true, 
     forceParse: true, 
     autoclose: true, 
    }); 
</script> 

當我格式化日期選擇器接在天/月/年的日期,當我拿起一個日期的格式是OK!我的意思是,我選擇日曆中的8月5日,文本框顯示05/08/2013,但是當點擊保存時會出現問題,因爲在控制器中,日期的值從幾天改爲幾個月! 謝謝!

+0

「mm/dd/yyyy」是美國的標準日期格式。我會假設你的問題是由你的代碼的一部分引起的,因爲你的語言環境是不適合的。數據庫,也許? – Blazemonger

+0

是的,爲什麼我在dateFormat中設置了「dd/mm/yy」..但是不起作用,因爲在控制器中我得到了不同的格式(「mm/dd/yy」) – Fco

回答

2

web.config添加以下內容:

<system.web> 
    <globalization culture="en-GB" uiCulture="en-GB" /> 
</system.web> 

應該更改默認的日期解析。

+0

他的代碼應該是'es- AR'實際上是阿根廷。 – Blazemonger

+0

@Blazemonger - 真的......我剛剛看到'dateFormat:'dd/mm/yy'',並認爲「這就是我使用的 - 他必須在英國!」 –