textbox只能输入小数

本文介绍了一个简单的方法来限制Windows窗体中的TextBox控件仅能接受小数输入。通过使用KeyPress事件,可以确保用户只能输入数字和小数点,并且小数点只能在没有其他小数点的情况下输入。
 1 /// <summary>
 2 /// txtbox只能输入小数
 3 /// </summary>
 4 /// <param name="sender"></param>
 5 /// <param name="e"></param>
 6         private void txtzhongxiang_KeyPress(object sender, KeyPressEventArgs e)
 7         {
 8             if (!(Char.IsNumber(e.KeyChar)) && e.KeyChar != (char)13 && e.KeyChar != (char)8)
 9             {
10                 int i = ((TextBox)sender).Text.IndexOf('.');
11                 if (e.KeyChar == '.' && ((TextBox)sender).Text.IndexOf('.') == -1)
12                 {
13 
14                     e.Handled = false;
15                 }
16                 else
17                 {
18                     e.Handled = true;
19                 }
20             }
21             else
22             {
23                 if (e.KeyChar == (char)13)
24                 {
25                     button3_Click(sender, e);
26                 }
27                 else
28                     e.Handled = false;
29             }
30         }

 

转载于:https://www.cnblogs.com/liuchuanxu/p/4248306.html

### EasyUI Textbox 组件限制输入数字和小数 为了使 EasyUI 的 `textbox` 组件仅接受数字和小数,可以利用 jQuery 和 EasyUI 提供的功能来实现这一需求。一种方法是在文本框上绑定键入事件并过滤掉非数字字符。 通过使用 jQuery 的 `.bind()` 方法监听按键释放 (`keyup`) 事件,并在每次按键后清理任何不符合条件的字符[^3]: ```javascript $("#idName").textbox('textbox').bind('keyup', function(e){ var val = $(this).val(); // 使用正则表达式保留数字和一个小数点 $("#idName").textbox('setValue', val.replace(/[^\d.]/g, '')); }); ``` 上述代码片段会移除所有不是数字或小数点的字符。然而,这还不足以完全满足要求,因为还需要防止多次输入小数点以及确保第一个字符不为小数点等问题。因此,更完善的解决方案如下所示: ```javascript $("#idName").textbox({ onChange:function(newValue,oldValue){ newValue = String(newValue); let reg=/^(?!0\d)(\d+(\.\d*)?|\.\d+)$/; if(!reg.test(newValue)){ $(this).textbox('setValue',''); } }, onKeyup:function(){ this.setValue(this.getValue().replace(/([^.]*\..*)(\.)/g,"$1")); } }); ``` 此段脚本不仅限定了只能录入数字与单一的小数点,还阻止了以零开头多位整数的情况发生,同时保证只有一个有效的小数点存在。 另外,在定义 HTML 中可以直接应用 `data-options` 属性简化配置过程[^2]: ```html <input type="text" class="easyui-textbox" id="addAreaCode" data-options="onChange:function(newValue, oldValue){...},onKeyup:function(){...}" /> ``` 以上方式能够有效地控制用户输入的内容范围,从而达到限定 EasyUI 文本框内只可填写数值型数据的目的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值