2017-04-21 9 views
0

私は、剣道のUI MVCのdateTimePickerを使用して、MVCモデルのバインディングが理解できるように日付を明白にフォーマットしようとしています。私はGET要求を介して提出するフォームでdatetimepickerコントロールを持っています。 DD/MM/YYYYとしてYYYY-MM-DDが、私はページ上の日付を表示したい剣道UI MVC datetimepickerを使用して、URL /フォームに日付を明白にフォーマットするにはどうすればよいですか?

私はこのコードを使用する場合は、MVCが正しく日付を解析しますが、表示されます。

MVCは、この形式で日付を期待最初に私が欲しいものではありませんユーザーへの年:

@(Html.Kendo().DateTimePicker() 
      .Name("ToDate") 
      .Format("yyyy-MM-dd") 
    ) 

が回避策はので、私はボックスに人間のための日付をフォーマットしますが、URLで明確な(不変)形式でフォーマットすることができますあります?

答えて

1

DateTimePickerの形式をユーザーフレンドリな形式に構成する必要があります。次に、javascriptを使用してウィジェットからDateオブジェクトを取得します(文字列の日付ではありません)。次に、この日付オブジェクトを 'yyyy-mm-dd'にフォーマットし、要求を行います。

だからあなたのウィジェットがあることshoul:

@(Html.Kendo().DateTimePicker() 
     .Name("ToDate") 
     .Format("dd/MM/yyyy") 
) 

次に要求をするために、このJavaScriptを使用します。

var date = $("#ToDate").data("kendoDateTimePicker").value(); 

日付変数を使用すると、フォーマットすることができjavascriptの日付を持っている:

function dateToString(date){ 
    var str = date.getFullYear() + "-"; 
    str += ('0' + (date.getMonth() + 1)).slice(-2) + "-"; 
    str += ('0' + date.getDate()).slice(-2) + "T"; 
    str += ('0' + date.getHours()).slice(-2) + "-"; 
    str += ('0' + date.getMinutes()).slice(-2) + "-"; 
    str += ('0' + date.getSeconds()).slice(-2); 
    return str; 
} 

この形式は "yyyy-mm-dd hh:mm:ss"ですが、希望する場合は時間部分を削除することができます

関連する問題