0

MVC 3 RazorプロジェクトではDisplayFormat、ViewModelでDateTimeプロパティをフォーマットするように定義しました

[DisplayFormat(DataFormatString = "{0:dd-MMM-yyyy}", ApplyFormatInEditMode = true)]
[Display(Name = "Posted Date")]
public DateTime PostedDate { get; set; }

そして、フィールドをビューで読み取り専用にする必要があります

@Html.TextBoxFor(model => model.PostedDate, new { @readonly = "readonly" })

ただし、日付を表示するTextBoxFor場合、DisplayFormatは適用されません。DisplayFormatに変更TextBoxForするEditorForと適用されますが、読み取り専用のCSSプロパティを適用できません。

日付の書式を適用してテキストボックスを読み取り専用にする方法は?

4

1 に答える 1

2

レンダリング用のエディターを引き続き使用できます。ケースに基づいて、レンダリング後もテキストボックスにレンダリングする必要があると思います。単純なjquery関数を使用して、レンダリングされたテキストボックスに読み取り専用の属性を追加できます。

$("#PostedDate").attr("readonly", "readonly");

それが最善の解決策かどうかはわかりませんが、試すことができます

于 2012-06-29T05:32:36.787 に答える