2016-12-14 60 views
0

EditorFor私は値が今日の日付になるようにしようとしていますが、なぜ機能していないのかわかりません。MVC Razor - 今日の日付としてEditorForのデフォルト値を設定

私はすでにいくつか試してみましたが、どれもうまくいかないようです。

試み1:

ビュー:

@Html.EditorFor(model => model.Opgevoerd, new { htmlAttributes = new { @class = "form-control", type = "DateTime", placeholder = "dd/mm/yyyy", value=DateTime.Now } }) 

試み2:

コントローラー:

Model.Opgevoerd = DateTime.Now; 

return View(Computers___tabel); 

ビュー:

@Html.EditorFor(model => model.Opgevoerd,"{0:dd/mm/yyyy}", new { htmlAttributes = new { @class = "form-control", type = "DateTime", placeholder = "dd/mm/yyyy" } }) 

私は試したことがありません3 x)

私はかなりの間これに固執されており、私はそれを把握することはできません。

ありがとうございます!

+1

は= DateTime.Now' –

+0

'HtmlHelper'方法は、お使いのモデルにバインドする値'に '値= DateTime.Now'を変更してみてください。 'Opgevoerd'の値をGETメソッドで設定し、モデルをビューに返します。 - 'model.Opgevoerd = DateTime.Now; View(model); '' value'属性を設定しようとしないでください。 –

+0

ありがとう@BrianAlltopが動作しませんでした。 – FllnAngl

答えて

0

ひげを完全にあきらめた後、私はEditorForの値をjavascriptを使って記入することに決めました。実行して

:助けを

var today = new Date(); 
var dd = today.getDate(); 
var mm = today.getMonth() + 1; //January is 0! 
var yyyy = today.getFullYear(); 
$('#opgevoerd').val(dd + "/" + mm + "/" + yyyy); 

感謝を:)

+0

真剣に? '[DisplayFormat(DataFormatString =" {0:dd/MM/yyyy} "、ApplyFormatInEditMode = true)] public DateTime Opgevoerd {get;セット; }}、モデルをビューに渡す前にGETメソッドで値を 'DateTime.Today;'に設定し、 '@Html.EditorFor(model => model.Opgevoerd、new {htmlAttributes = new {@class =" formあなたが日付コンポーネントを必要とするときに 'type =" DateTime "をなぜ設定しているのですか? –

+0

データベースではdatetime(私はデータベースを作成しませんでした)ではなく、同僚日付だけが欲しかった。私はインターンの時からasp.netには比較的新しいので、あなたが何を意味しているのか正確にはわかっていませんでした。私は上司に尋ねました。そして、彼はopgevoerdがモデルではないのでjavascriptを使うように言った。それはモデル内のアイテムです。私はあなたのやり方でそれをやっていないことを申し訳なく思っています。 – FllnAngl

+0

データベース(またはモデル)の 'DataTime'型はHTML-5 datetimepicker(限られたブラウザサポートしか持たない)を生成するHTML-5' type = "datetime" ' - とはまったく関係ありません。あなたはjavascriptを必要としないだけでなく、その愚かなこともあります(使用法が値を入力したときに何が起きても、ビューを返す必要があると考えます - ユーザーが入力したものが失われます)。そして、私は 'Opgevoerd'があなたのモデルのプロパティであることを知っています。もしそうでなかったら、うまくいかないでしょう:) –

関連する問題