C/S中
在WinForm程序中,如果想讓一個文本框只能輸入數字,或者只能輸入字母的方法(其中'\b的意思是:刪除鍵退格'):
只能輸入字母
private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
{
//是否處理事件,如果為true就處理事件,否則不處理
e.Handled = true;
if ((e.KeyChar >= 'a' || e.KeyChar >= 'A') && (e.KeyChar <= 'z' || e.KeyChar <= 'Z') || e.KeyChar == '\b')
{
e.Handled = false;
}
}
只能輸入數字
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = true;
if (e.KeyChar >= '0' && e.KeyChar <= '9' || e.KeyChar=='\b' )
{
e.Handled = false;
}
}
在WINFORM中重寫方法:ProcessCmdKey可獲取鍵盤按鍵
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
const int WM_KEYDOWN = 0X100;
const int WM_SYSKEYDOWN = 0X104;
string strInfo = string.Empty;
if ((msg.Msg == WM_KEYDOWN) || (msg.Msg == WM_SYSKEYDOWN))
{
switch (keyData)
{
case Keys.Down:
strInfo = "向下";
break;
case Keys.Up:
strInfo = "向上";
break;
case Keys.Left:
strInfo = "向左";
break;
case Keys.Right:
strInfo = "向右";
break;
}
}
return base.ProcessCmdKey(ref msg, keyData);
}
B/S中
在.aspx中驗證用戶只能輸入數字的方法:
1.使用JS方法驗證
2.使用鍵盤事件(也是JS)
<input onkeypress="if (event.keyCode>=48 && event.keyCode<=57){ event.returnValue=true;}else{ event.returnValue=false;}" />
在.aspx中驗證用戶只能輸入字母的方法:
1.使用JS方法驗證
2.使用鍵盤事件(大寫字母:65-90、小寫字母:97-122)
<input onkeypress="if ((event.keyCode>=65 && event.keyCode<=90) || (event.keyCode>=97 && event.keyCode<=122)){ event.returnValue=true;}else{event.keyCode=false;}" />
屏蔽文本框的輸入法:style="ime-mode:disabled"
如何去掉按鈕按下時,按鈕上的虛線:hidefocus="false"
摘自 幸福的豬的專欄