次のモデルプロパティがありました
[DisplayName("Salary per year")]
public decimal Salary { get; set; }
そしてレーザーマークアップは
@Html.EditorFor(model => model.Salary)
@Html.ValidationMessageFor(model => model.Salary)
生成された html コード:
<input class="text-box single-line input-validation-error" data-val="true" data-val-number="The field Salary per year must be a number." data-val-required="The Salary per year field is required." id="Salary" name="Salary" type="text" value="">
<span class="field-validation-error" data-valmsg-for="Salary" data-valmsg-replace="true"><span for="Salary" class="" style="">The field Salary per year must be a number.</span></span>
クライアントの検証では、ユーザーは数字のみを入力できます。ただし、ユーザーは数字の前に $ を入力できるようにしたいと考えています (後で、数字を区切るために "," も入力できるようにしたいのだろうか)。有効にする方法は?decimal
(そして、コントローラーで文字列を解析しますか?)
現在、「年間給与フィールドは数値でなければなりません」と表示されています。「$」を入力するとすぐに赤く表示されます。