新版網站
asp.net 文本框只能輸入數字
發布時間:2014/10/27   已被4507人閱讀    分享到:
<asp:textbox id="TextBox1" onkeyup="if(isNaN(value))execCommand( undo )" runat="server" Width="80px" onafterpaste="if(isNaN(value))execCommand( undo )"></asp:textbox>
其實服務器控件也能加上onkeydown與up等事件的,這樣就行了 只能輸入小數與數字

在.net開發中,為了確保數據的正確性,經常要用戶輸入的內容進行驗證,比喻說只能輸入數字。
首先在TextBox控件中加一個屬性事件:
<asp:textbox class="Text" onkeypress="if (event.keyCode < 48 || event.keyCode >57) event.returnValue = false;" id="txtY_Revenue" style="TEXT-ALIGN: right" runat="server" Width="90%" MaxLength="12">
</asp:textbox>

鍵盤按下去時檢查按下的是不是0-9,如果不是的話,不將當前的輸入放入文本框中

說明: 此方法控制TextBox只輸入數字:0~9,提供一種思路

順便再分享一下常用的:

1.取消按鈕按下時的虛線框
在input里添加屬性值 hideFocus 或者 HideFocus=true

2.只讀文本框內容
在input里添加屬性值 readonly

3.防止退后清空的TEXT文檔(可把style內容做做為類引用)
<INPUT style=behavior:url(#default#savehistory); type=text id=oPersistInput>

4.ENTER鍵可以讓光標移到下一個輸入框
<input onkeydown="if(event.keyCode==13)event.keyCode=9" >

5.只能為中文(有閃動)
<input onkeyup="value=value.replace(/[ -~]/g, )" onkeydown="if(event.keyCode==13)event.keyCode=9">利用Ascii碼的范圍進行判斷

6.只能為數字(有閃動)
<input onkeyup="value=value.replace(/[^\d]/g, ) "onbeforepaste="clipboardData.setData( text ,clipboardData.getData( text ).replace(/[^\d]/g, ))">利用Ascii碼的范圍進行判斷

7.只能為數字(無閃動)
<input style="ime-mode:disabled" onkeydown="if(event.keyCode==13)event.keyCode=9" onKeyPress="if ((event.keyCode<48 || event.keyCode>57)) event.returnValue=false">利用Ascii碼的范圍進行判斷

8.只能輸入英文和數字(有閃動)
<input onkeyup="value=value.replace(/[\W]/g, ) "onbeforepaste="clipboardData.setData( text ,clipboardData.getData( text ).replace(/[^\d]/g, ))">利用js的正則表達式進行驗證

9.屏蔽輸入法
<input type="text" name="url" style="ime-mode:disabled" onkeydown="if(event.keyCode==13)event.keyCode=9">

10. 只能輸入 數字,小數點,減號(-) 字符(無閃動)
<input onKeyPress="if (event.keyCode!=46 && event.keyCode!=45 && (event.keyCode<48 || event.keyCode>57)) event.returnValue=false">利用Ascii碼的范圍進行判斷

11. 只能輸入兩位小數,三位小數(有閃動)
<input maxlength=9 onkeyup="if(value.match(/^\d{3}/))value=value.replace(value,parseInt(value/10)) ;value=value.replace(/\.\d*\./g, . )" onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 && event.keyCode!=45 || value.match(/^\d{3}/) || /\.\d{3}$/.test(value)) {event.returnValue=false}" id=text_kfxe name=text_kfxe> 利用js的正則表達式進行驗證。
本文分享地址:http://www.adrhaerth.com/news/202.html上海網站建設公司朗晟網絡編輯,轉發請注明來源及版權歸屬。
上一篇:祝賀愛貝國際少兒英語新版網站正式上線! 【關閉】
下一篇:朗晟網絡2015年元旦放假安排
色聚阁