在网页里让文本框只能输入数字的一种方法。外加回车换Tab

本文介绍如何通过ASP.NET的TextBox控件结合JavaScript来实现只允许用户输入数字及特定字符的功能。具体方法包括设置样式表属性以禁用IME模式,并通过键盘事件监听确保输入合法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第一步利用样式表。
<asp:TextBox Runat="server" id="TT" style="ime-mode:disabled"  onkeydown="myKeyDown()"></asp:textBox>

第二步利用js脚本。

function myKeyDown()
{
    
var   k=window.event.keyCode;   

    
if ((k==46)||(k==8)||(k==189)||(k==109)||(k==190)||(k==110)|| (k>=48 && k<=57)||(k>=96 && k<=105)||(k>=37 && k<=40)) 
    
{}
    
else if(k==13){
        window.event.keyCode 
= 9;}

    
else{
        window.event.returnValue 
= false;}

}


利用样式表(style="ime-mode:disabled" )可以防止切换成汉字输入法,也就是说只能使用英文输入法,这样就防止了输入汉字的情况。

js脚本就是要限制键盘输入,只能填入数字、小数点、负号、退格键、删除键和方向键。

ascii码说明:
8:退格键
46:delete
37-40: 方向键
48-57:小键盘区的数字
96-105:主键盘区的数字
110、190:小键盘区和主键盘区的小数点
189、109:小键盘区和主键盘区的负号

13:回车
9: Tab 就是那个把焦点移到下一个文本框的东东。

对了还有两个缺点:
1、没有验证多个小数点的情况。
2、没有验证多个负号,和符号必须在前的情况。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值