35

<input type="date"/>モデルの for datetime 属性を挿入する方法を知りたいです。今のところ、Razor は でプレーンな入力要素を作成しtype="datetime"ます。HTML5 の新しい入力タイプを活用したい。

4

5 に答える 5

50

入力日付値の形式には、https://www.rfc-editor.org/rfc/rfc3339#section-5.6 full-date に従って指定された日付が必要です。

だから私はやってしまった:

<input type="date" id="last-start-date" value="@string.Format("{0:yyyy-MM-dd}", Model.LastStartDate)" />

私はそれを「適切に」やってみました:

[DataType(DataType.Date)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]
public DateTime LastStartDate
{
    get { return lastStartDate; }
    set { lastStartDate = value; }
}

@Html.TextBoxFor(model => model.LastStartDate, 
    new { type = "date" })

残念ながら、それは常に入力の値属性を標準の日時に設定しているように見えたので、上記のようにフォーマットを直接適用することになりました。

編集:

使用する場合はヨルンによると

@Html.EditorFor(model => model.LastStartDate)

TextBoxFor の代わりに、すべて正常に動作します。

于 2013-09-09T09:07:21.807 に答える
34

次のコードを使用して、なんとかそれを行うことができました。

@Html.TextBoxFor(model => model.EndTime, new { type = "time" })
于 2013-01-21T15:17:06.877 に答える
0

@Html.EditorFor() を使用する場合は、jQuery ui を使用し、NuGet Package Manager を使用して Asp.net Mvc を 5.2.6.0 に更新する必要があります。

@Html.EditorFor(m => m.EntryDate, new { htmlAttributes = new { @class = "datepicker" } })

@section スクリプト {

@Scripts.Render("~/bundles/jqueryval")

<script>

    $(document).ready(function(){

      $('.datepicker').datepicker();

     });

</script>

}

于 2018-08-04T09:56:19.070 に答える
-3

タグ type="date" で取得します...次に、美しいカレンダーとすべてをレンダリングします...

@Html.TextBoxFor(model => model.EndTime, new { type = "date" })
于 2016-04-14T09:29:47.420 に答える