gpt4 book ai didi

c# - MVC 不接受带逗号 (,) 的小数,但默认情况下以逗号显示它们

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

首先让我说我对 mvc 的工作原理几乎为零,而且我的大部分代码都是由 visual studio 生成的。我什至不知道去哪里解决这个问题。

因此,我创建了一个包含“价格”(decimal(5,2)) 作为字段的数据库。查看数据库时,价格字段以 0,00 格式显示。数据库有一条记录,价格值为5,25。然后我让 vis studio 基于这个数据库生成一个模型(然后是带有 View 的 Controller )。在大多数情况下它是有效的;我可以通过 View 插入一条新记录并将其存储在数据库中。

问题在于小数。当我转到默认的“创建” View 时,输入价格的文本字段以默认值 0,00 开头。然后该文本字段立即显示红色警告文本“字段价格必须是数字”。如果我输入一个没有小数点的数字,记录将毫无问题地插入。如果我输入一个带逗号的数字,我会收到上述警告。如果我输入格式为 0.00(例如 1.25)的数字,我不会收到任何警告,并且可以提交,但输入的数字将为 0。

默认的“编辑” View 中存在类似的问题。文本字段全部自动填充来自所选记录(要编辑的记录)的数据,但价格字段以 0,00 格式显示,我收到与上面相同的警告。在默认“索引” View 中显示记录时,价格为 5,25 的记录以 0,00 格式正确显示。

我对任何一种格式都没有依恋,我只想要一致性,以及输入带小数的数字的能力。我的一些代码:

编辑/创建 View 中的输入(两者相同):

<div class="form-group">
<h4>
<strong>Price</strong>
</h4>
<input asp-for="ItemPrice" class="form-control" />
<span asp-validation-for="ItemPrice" class="text-danger"></span>
</div>

模型中price字段的声明:

public decimal ItemPrice { get; set; }

最佳答案

我有一个项目,价格问题也发生在我身上。

问题是您要显示 1,234.56 还是 1234,56 这样的价格。

如果您想要第一种格式的显示,我建议使用 jQuery http://plugin price-format.github.io/Jquery-Price-Format/

如果您希望以第二种格式显示,您可以创建一个方法并将 ,(逗号)替换为 .(点)在 JavaScript 中。

关于c# - MVC 不接受带逗号 (,) 的小数,但默认情况下以逗号显示它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58079030/

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