【发布时间】:2010-09-17 04:08:05
【问题描述】:
我正在编写一个 ASP.NET 应用程序。我在网络表单上有一个文本框,我想强制用户输入的任何内容为大写。我想在前端做这个。您还应该注意,此文本框上有一个验证控件,因此我想确保该解决方案不会干扰 ASP.NET 验证。
说明: 似乎 CSS 文本转换使用户输入以大写形式显示。但是,在后台,由于验证控制失败,它仍然是小写字母。你看,我的验证控件检查是否输入了有效的状态代码,但是我使用的正则表达式只适用于大写字符。
【问题讨论】:
-
您是否有意将您的正则表达式限制为仅使用大写字符?根据您的措辞,您可能不知道正则表达式实现通常支持区分大小写的开关。
-
我不是正则表达式专家。除了将每个状态代码复制两次(大写和小写)之外,我知道在正则表达式中支持大写和小写状态代码比较的已知方法。我认为将输入框转换为大写会更干净。
-
不用担心 - 我建议使用类似以下的 (C#) 而不是修改用户输入:Regex re = new Regex("myExpression", RegexOptions.IgnoreCase);
-
我也有同样的问题。我将 text-transform 设置为大写,以便在用户键入时设置文本框的外观,并且一旦文本框失去焦点,我将使用 onblur 事件将值设置为大写。然而,验证器对这个值不满意。您找到解决此问题的方法了吗?
-
为什么不提供状态码的下拉菜单呢?
标签: javascript asp.net html textbox uppercase