MVCで入力番号を使用しようとしていますが、カンマを正しく受け入れています(カンマを小数点区切りとして使用しています)。MVCはそれを受け入れます私が作ったカスタムバインダーで。値はデータベースに正しく保存され、戻ってきます。HTML 5数値MVCでの入力が十進数で表示されない
問題は、数値コントロールに0.231のように見える10進数値を渡すとき、私はそれが私のカルチャにカンマで書式設定しようとしていると思うので、何も表示されません。
バインダーはサーバーに戻ったときに機能しますが、ページに戻るときにコントロールに戻るために何か別のものが必要ですか?
かみそりビューで私のコントロール:
@Html.EditorFor(model => model.DecimalValueForExample, new { htmlAttributes = new { @class = "form-control", @type = "number", @step = "any", @min = "0.001", autocomplete = "off" } })
のviewmodelで私の属性:これは、過去のブラウザのコンプライアンスの問題と支援の水準となっている
[Display(Name = "DecimalValueForExample", ResourceType = typeof(Properties.Resources))]
[DisplayFormat(DataFormatString = "{0:0.###}", ApplyFormatInEditMode = true)]
[Range(0.001, double.MaxValue, ErrorMessageResourceName = "RangeErrorMessage", ErrorMessageResourceType = typeof(Properties.Resources))]
[Required]
public decimal DecimalValueForExample{ get; set; }
html5のは、小数点以下の数字ではなく整数で最も効果的だと思います。 w3schoolsで試してみてください:https://www.w3schools.com/html/html_form_input_types.asp – mortb
10進数で正常に動作します。ここで例を保存しました:https://www.w3schools.com/code/tryit.asp?ファイル名= FELCCBVINC0P –
ええ、そうです。私はステップ=「すべて」の部分を見逃しました。 – mortb