【发布时间】:2017-06-07 12:43:04
【问题描述】:
我在构建一个简单的 Web 应用程序时遇到了一个非常令人沮丧的问题。
它在 chrome 和 firefox 中运行良好,但是在 ipad 上的 Safari 中使用该应用程序时(将在其中实时使用),数据格式不正确。
例如,检索到的数据肯定使用点 (.) 作为小数分隔符,并在 firefox/chrome 中显示为这样。
但是,在 safari 中查看数据时,它显示为逗号 (,),这弄乱了我的数据库插入。
我尝试将我的地区和语言更改为英国,但没有任何效果。
这就是我显示有问题的小数之一的方式:
@Html.LabelFor(model => model.MassOff, new { @class = "viewFieldLabel" }) <br />
@Html.DisplayFor(model => model.MassOff)
但更糟糕的是,因为我还在 WebGrid 的其他地方显示小数,它会根据类属性自动填充自己,所以我从未明确告诉它显示小数。但是,它在WebGrid 中仍然以逗号出现,所以我不知道我将如何更改它...
为什么 safari 会自动执行此操作,而我从未要求它转换任何格式?我现在是否必须手动尝试查找所有这些值并使用 JQuery 更改它们(这看起来非常荒谬),或者我可以在 ipad 上更改一些设置或我需要包含在我的代码中的属性?
更新
我设法修复了小数的显示方式
[DisplayFormat(DataFormatString = "{0:0.###}")]
上面有问题的属性。但是,在提交数据时,它仍然是用逗号(,)发送的,所以看起来这只改变了它的显示方式。
【问题讨论】:
标签: asp.net-mvc ipad safari formatting culture