당신은 페이지에 숨겨진 입력 필드를 추가 할 수 있습니다 다음과 같이 코드의
내 작품이다. altField
및 altFormat
옵션을 사용하면 데이터를 다른 형식으로 사용자에게 보낼 수 있습니다.
이렇게하려면 DateTime 형식에 대한 사용자 지정 편집기 템플릿을 만들 수 있습니다. DateTime.cshtml 파일을 Views/Shared/EditorTemplates 폴더에 추가하십시오.
그런 다음 (하지 테스트)이 같은 내용을 사용할 수 있습니다
@model DateTime?
@using System.Globalization
@{
var name = MvcHtmlString.Create(ViewData.TemplateInfo.GetFullHtmlFieldName(""));
var id = MvcHtmlString.Create(ViewData.TemplateInfo.GetFullHtmlFieldId(""));
var visibleID = id + "_editor";
var value = Model ?? DateTime.Today;
var formattedValue = value.ToString("dd MMM yyyy");
}
<input type="text" id="@(visibleID)" value="@formattedValue" />
<input type="hidden" id="@(id)" name="@(name)" value="@value.ToString("yyyy/MM/dd")" />
<script type='text/javascript'>
$(function() { $('#@(visibleID)').datepicker({ dateFormat: 'd mm y', altField='@id', altFormat='d/m/y' }); });
</script>
그런 다음 당신은 단지 TextBoxFor을 사용해야합니다, 어떤 날짜 시간 필드를 활성화하여 DateTimePicker있을 것이다.
출처
2011-01-13 09:36:48
GvS
위의 작업을 더 간단하고 깨끗하게 수행 할 수있는 방법이 있습니까? – learning
한 번만 DateTime.cshtml을 추가하십시오. 그런 다음 페이지에서 TextBoxFor를 사용하면됩니다. 얼마나 청결 할 수 있습니까? – GvS
좋아, 나는 그것을 이해하지 못했다. 도우미가 있습니까? – learning