asp.net MVC 4验证十进制数

本文关键字:验证 十进制数 MVC net asp | 更新日期: 2023-09-27 18:08:33

我在应用程序中验证小数时遇到了一些问题。例如,如果我在文本框中写入"14,25",这对于我的区域性是正确的,那么它将无法通过客户端验证。此外,如果我写14.25点被删除,1425被放置在实体属性,而且,SaveChanges保存到数据库表的值是999,99。需要关于这个问题的建议。这与我的另一个问题有关:https://stackoverflow.com/questions/24186365/set-jquery-culture-once-for-the-entire-aplication-possible/24186535 24186535

编辑:代码添加,它是如此简单,我认为我不会是必要的,因为这必须是一个常见的问题。

[DisplayFormat( DataFormatString = "{0:n2}", ApplyFormatInEditMode = true )]
        public decimal Peso { get; set; }
@Html.LabelFor(model => Model.Peso)
<div class="input-control text" data-role="input-control">
    @Html.EditorFor(model => Model.Peso)
    @Html.ValidationMessageFor(model => Model.Peso)
</div>

asp.net MVC 4验证十进制数

尝试使用jQuery的全球化插件http://github.com/jquery/globalize.

添加以下文件到/scripts文件夹:

/scripts/globalize.js
/scripts/cultures/globalize.cultures.js
/sctipts/cultures/globalize.culture.de-DE.js
在BundleConfig.cs:

bundles.Add(new ScriptBundle("~/bundles/scripts/globalization").Include(
      "~/Scripts/globalize*",
      "~/Scripts/cultures/globalize*"));
在_Layout.cshtml:

@Scripts.Render("~/bundles/scripts/globalization")