gpt4 book ai didi

c# - Html.EditorFor 用于带逗号的小数字段

转载 作者:行者123 更新时间:2023-11-30 18:36:36 26 4
gpt4 key购买 nike

您好,我为价格定义了一个小数字段,如下所示:

[Required(ErrorMessage = "Asking Price/Rent is required.")]
[Display(Name = "Asking Price/Rent*")]
[DisplayFormat(DataFormatString = "{0:N0}", ApplyFormatInEditMode = true)]
public decimal Price {get; set;}

在我看来,我有一个编辑器字段,如下所示:

<div class="editor-label">
@Html.LabelFor(model => model.Property.Price)
@Html.EditorFor(model => model.Property.Price)
</div>

我在 web.config 中设置了以下全局化文化

<globalization uiCulture="en-GB" culture="en-GB" />

如果我不使用逗号,一切正常。即

50.00 被保存并显示为 50500000 被保存并显示为 500,000

但是,如果我尝试输入 500,000,即使用逗号,则会出现以下错误:

The value '500,000' is not valid for Asking Price/Rent*.

我希望编辑器字段能够使用逗号,因为我希望大多数用户在表单中输入价格时使用逗号。

如何在输入数字时允许使用逗号?

最佳答案

我有一个解决方案可能首先适用于您的案例,我们将使用一些 javascript 来帮助我们解决这个问题

保留上面实现的文本框并在其旁边添加标签空白标签

我们使用 javascript 解析在文本框中输入的数字,并将其转换为您希望显示的带有逗号的新格式

通过这种方式,您可以获得添加数据注释验证的全部功能,并向用户显示格式化的数字

以下链接在这方面也对您有帮助

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/toLocaleString

http://weblogs.asp.net/scottgu/archive/2010/06/10/jquery-globalization-plugin-from-microsoft.aspx

http://yuilibrary.com/yui/docs/datatype/#formattingnumbers

关于c# - Html.EditorFor 用于带逗号的小数字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13595685/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com