如何检查是不是在 KeyUp 事件的文本框中输入了数字或字母 [重复]

Posted

技术标签:

【中文标题】如何检查是不是在 KeyUp 事件的文本框中输入了数字或字母 [重复]【英文标题】:how to check whether a number or letter has been entered in a textbox on KeyUp Event [duplicate]如何检查是否在 KeyUp 事件的文本框中输入了数字或字母 [重复] 【发布时间】:2021-02-11 15:11:37 【问题描述】:

在 KeyPress 或 KeyUp 事件中,我该如何做这样的事情:

if (String.IsOnlyANumber(textBox.Text))
 
    do my things

else if(String.IsLettersAndEverythingElse(textBox.Text))

    do my other things

【问题讨论】:

重复:how to check if the character is an integer, How do I make a textbox that only accepts numbers? @41686d6564 为什么要更改链接?最后一个更好 我没有更改链接。我的评论中有两个链接。第一篇文章告诉您如何检查字符是否为数字,第二篇文章告诉您如何在KeyPress 事件中获取字符(如果您不知道如何)。 @41686d6564 对不起,我的错。没看到 :D 早上很辛苦 【参考方案1】:
private void your_textBox_KeyPress(object sender, KeyPressEventArgs e)

    if (char.IsDigit(e.KeyChar)) 
    
        // is a number
    
    else 
    
        // is anything else
    

【讨论】:

【参考方案2】:

试试这个,

textBox1.Text = string.Concat(textBox1.Text.Where(char.IsLetterOrDigit));

在您的 KeyPress 或 KeyUp 事件中。

【讨论】:

以上是关于如何检查是不是在 KeyUp 事件的文本框中输入了数字或字母 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

在 JS/jQuery 中触发 keypress/keydown/keyup 事件?

如何检测文本框的内容已更改

jQuery sum on change keyup() 并在文本框中输出

如何在文本框中获取Enter键以触发函数而不是第一个/默认按钮

表单事件(jQuery)

我怎样才能只获得在我的文本框中输入的小时数,并与在 rateperhour 中的 keyup 输入相乘,然后在我的总数中显示答案?