1

モデルにプロパティがあります:

    [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:HH:mm}")]
    [DataType(DataType.Time)]
    public DateTime? CompanyFromTime { set; get; }

DataType に注意してください。これを IIS でローカルに実行し、クロムで表示すると、正しい HTML5 タイム エディターが表示されます。これは出力される html です。

<input class="text-box single-line" id="CompanyFromTime" name="CompanyFromTime" type="time" value="">

このソリューションを展開してクロムでライブ表示すると、htmlエディターは表示されませんが、jqueryが日時として検証しようとしているように見えるプレーンテキストボックスが表示されます。

<input class="text-box single-line input-validation-error" data-val="true" data-val-date="The field CompanyToTime must be a date." id="CompanyToTime" name="CompanyToTime" type="text" value="00:00">

出来上がりが格段に違います!DataType が無視され、デフォルトの検証がこれを DateTime として扱っているかのようです。

That DataType が無視される理由を知っている人はいますか?

4

2 に答える 2

1

好奇心から、サーバーにインストールされている最新の MVC 4 を使用していますか? 私が間違っていなければ、この機能はMVC 4でのみ利用可能です。

Mvc Html5 Toolkitも試してみてください。

于 2013-06-06T13:33:27.067 に答える
0

MVC4を再度インストールすると、すべてが期待どおりに機能し始めました。

于 2013-06-07T08:23:34.553 に答える