c# - 验证/创建仅数字文本框的最佳方式?

标签 c# asp.net javascript validation currency

我想要一个只有数字/货币的文本框控件。

所以基本上它应该接受这种输入

$123
523,100
$12.50
85.59

并将其转换为

123
523100
12.50
85.59

不应该接受这个输入

F12
309$2342
,102

我看过验证器控件,但我想完全从客户端进行这种转换/检查。这样做的最佳方法是什么?

如果他们尝试输入无效数据并防止他们将错误数据留在文本框中,我还希望弹出客户端错误(消息框或其他内容)。然后当他们离开文本框的焦点时,它会自动将数据从客户端转换为平面数字。

我将如何开始这样做? ASP.Net 中有什么可以帮助我的吗?我是否需要只使用 onfocus 事件或者 javascript 中哪个事件更适合验证这一点?我在 Javascript 方面也相当缺乏经验。所以如果这有点菜鸟,我深表歉意。

是的,我也会在服务器端验证

最佳答案

您可以尝试在每次击键后使用 isNaN() 验证文本框中的值以检查该值是否为数字。

无论如何,这个问题之前已经在这里得到回答:Validate decimal numbers in JavaScript - IsNumeric()

关于c# - 验证/创建仅数字文本框的最佳方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2095313/

相关文章:

c# - 在自定义类的 IEnumerable 中对具有特定 ID 的项目求和

c# - 创建配置节处理程序时出错

c# - 如何让另存为对话框出现 "early"?或者 : How to make Flush() behave correctly?

asp.net - Web 应用程序性能调整的技巧和窍门

c# - ComboBoxCell 中的自定义绘制项

c# - 在 C# 中访问可空值的最佳方式

javascript - 如何使用 C# 方法从 ASP.Net Javascript AJAX 请求返回 bool 值?

javascript - 重构以使函数可通过 setState 重用

javascript - 带有 'return as function' 的 javascript 函数如何工作

javascript - 如何在 ng-regex 中包含 qutoes + 双引号?