2013-10-09 2 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> 

Когда я форматировать DatePicker выбрать дату в дни/месяцы/годы, и когда я выбрать дату в формате, это нормально! Я имею в виду, что я выбираю 5-й август в календаре, а текстовое поле показывает 05/08/2013, но проблема возникает при сохранении клика, потому что в контроллере значение даты изменяется от нескольких месяцев до нескольких месяцев! Спасибо!

+0

'mm/dd/yyyy' - стандартный формат даты в США. Я бы предположил, что ваша проблема вызвана частью вашего кода, думая, что ваш локаль где-то не так. Возможно, база данных? – Blazemonger

+0

Да, поэтому я установил «dd/mm/yy» в dateFormat .. но не работает, потому что в контроллере я получаю разный формат («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'' и подумал:« вот что я использую - он должен быть в Великобритании! » –

Смежные вопросы