2010-12-20 24 views
1

jquerydatepickerとTextBoxFor()メソッドに関する質問があります。 私はオブジェクトを作成して編集するためにそれらを使用するasp.netフォームを持っています。私は編集と作成に同じフォームを使用します。 それは次のようになります。私は編集を使用する場合jquery datepicker + Html.TextBoxFor

<script> 
    $(function() { 
    $("#datepicker2").datepicker(
    { 
     dateFormat: 'yy.mm.dd' 
    });       
    }); 
</script> 

<div class=demo><%= Html.TextBoxFor(m => m.Distribution.ToDate, new { id = "datepicker2", type = "text" })%></div> 

それは正常に動作しますが、私の質問は、どのように私は日付をフォーマットしますか?それは空のテキストボックスを表示し、私は日付を選択した場合、それは正しい形式になりますので、それは大丈夫です。編集では、最初にdatetime値全体が表示され、日付を選択すると、それが表示されます。しかし、私はそれをどのようにして、それが最初からそれを望むかのように表示するでしょうか?

私はそうのようにそれを実行しようとしました:

<%= Html.TextBoxFor(m => m.Distribution.ToDate.ToShortDateString(), new { id = "datepicker2", type = "text" })%> 

が、それはエラーが発生します。

提案がありますか?

答えて

2
<script language="javascript" type="text/javascript"> 
    $(document).ready(function() { 
     $('#startDatePicker').datepicker({ clickInput: true }); 
    }); 
</script> 


<% var attributes = (new Dictionary<string, object> { { "Value", Model.Plan.StartDate.ToShortStrin() } }); %> 
<% attributes.Add("style", "width:80px; text-align:right"); %> 
<% attributes.Add("ID", "startDatePicker"); %> 
<%: Html.TextBoxFor(model => model.Plan.StartDate, attributes)%>