You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kendo UI输入框显示异常:200.00显示为20000及默认金额设置问题

解决Kendo UI输入框金额显示多两位零的问题

问题根源

200.00显示为20000的核心原因是文化区域设置不匹配,Kendo UI的数值/货币控件会依据当前文化规则解析小数和千分位分隔符。若应用的文化设置将逗号设为小数分隔符、点设为千分位分隔符,200.00就会被错误解析为20000。另外,自定义格式字符串的写法错误也可能触发该问题。

修复方案

1. 正确配置CurrencyTextBox

CurrencyTextBox内置货币格式逻辑,建议依赖文化设置而非手动硬写格式,同时明确指定小数位数:

@(Html.Kendo().CurrencyTextBoxFor(model => model.Paid)
    .Culture("en-ZA") // 适配南非兰特(R)的文化,确保小数分隔符为点
    .Decimals(2)      // 强制保留两位小数
    .Min(0))

2. 修正NumericTextBox的格式与文化

如果使用NumericTextBox,需调整格式字符串并指定正确的文化规则:

@(Html.Kendo().NumericTextBoxFor<decimal>(model => model.Paid)
    .Culture("en-ZA")
    .Format("R#.00")  // 明确指定带两位小数的格式
    .Decimals(2)
    .Min(0))

3. 验证后台模型值

确认后台model.Paid的默认值确实是200.00m(decimal类型),排除因赋值错误导致的显示异常。

内容的提问来源于stack exchange,提问作者Jeffrey Skinner

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 02:30:44