モデル クラスに 2 つのプロパティがあります。
public int? IntTest { get; set; }
public decimal? DecimalTest { get; set; }
次に、次のようにレンダリングします。
@Html.EditorFor(model => model.IntTest, new { htmlAttributes = new { @class = "form-control"} })
@Html.EditorFor(model => model.DecimalTest, new { htmlAttributes = new { @class = "form-control"} })
どちらも数値型のhtml入力としてレンダリングされると思っていましたが、10進数はそうではありません。
<input class="form-control text-box single-line" data-val="true" data-val-number="The field IntTest must be a number." id="IntTest" name="IntTest" type="number" value="" />
<input class="form-control text-box single-line" data-val="true" data-val-number="The field IntTest must be a number." id="DecimalTest" name="DecimalTest" type="text" value="" />
10 進数値は としてレンダリングされますtype="text"
が、int は として登録されtype="number"
ます。
この質問は、期待される動作ではないことを意味するので、何か間違ったことをしていますか?
それが期待される動作である場合、すべての小数フィールドに追加するのではなく、EditorFor
すべての小数を としてレンダリングするように変更する方法はありますか?type="number"
type = "number"
htmlAttributes