【问题标题】:textbox allow only letters文本框只允许字母
【发布时间】:2010-10-24 02:53:04
【问题描述】:

我需要一些关于文本框的帮助:

文本框只允许包含字母。 我该怎么做?

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    在这里查看:How to make Textbox only accept alphabetic characters,有一些不同的方法可供选择。

    编辑:我在标签上看到我们正在谈论 asp.net,我提到的问题从 WinForms 的角度讨论了这个问题。可能是您想使用 JavaScript 中的 onKeyPress 事件来做类似的事情。

    This article on w3schools.com 包含一个示例代码,可能完全符合您的要求。

    【讨论】:

      【解决方案2】:

      您可以为此使用正则表达式验证并使用以下正则表达式 "^[a-zA-Z]+$"

      这是最简单的方法。

      【讨论】:

        【解决方案3】:

        您可以使用 javascript 过滤掉您接受的字符,但如果您可以使用 Asp.net AJAX,那么您可以将 FilteredTextBoxExtender 添加到文本框,并且只允许大写和/或小写字母。

        要在 Visual Studio 2008 中添加 FilteredTextBoxExtender,您可以执行以下操作:

        • 在设计模式下查看页面并找到文本框
        • 单击文本框右侧的箭头打开“文本框任务”菜单并选择“添加扩展器”。
        • 然后选择FilteredTextBoxExtender并点击OK
        • 现在您的文本框应该在设计器中有一个可用的新属性。确保选中文本框,然后单击 F4 打开属性设计器。
        • 在属性设计器中查找新属性。它应该被命名为 YOURTEXTBOXNAME_FilteredTextBoxExtender。找到 FilterType 属性并选择 UppercaseLetters 或 LowercaseLetters。
        • 如果您需要大写和小写字母,您必须直接编辑标记并将其值设置为“UppercaseLetters, LowercaseLetters”

        【讨论】:

        • 安装 ajax toolkid 后这似乎工作得很好:)
        【解决方案4】:

        Javascript/JQuery 是您让 UI 只接受字母的好帮手。但是,您必须确保在回发时验证文本框的内容,否则您可能会在人们绕过 javascript 的地方获得不良数据。

        【讨论】:

        • 原则上我同意,但 asp.net 使这比它需要的要困难得多,尤其是在 2.0 中。最快、最不痛苦的方法就是使用内置的正则表达式验证控件。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-12-16
        • 2020-09-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多