CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

怎么让TEXTBOX只能输入数字

楼主SimpleDay(今天你穿内裤了吗?)2006-03-13 13:06:02 在 .NET技术 / ASP.NET 提问

就是输入别的字符的时候都输入不进去。。  
  只能输入整数或是小数。。。  
  应该怎么写。 问题点数:20、回复次数:21Top

1 楼zhtflhs(哼哼)回复于 2006-03-13 13:11:46 得分 3

private   void   textBox1_KeyPress(object   sender,   System.Windows.Forms.KeyPressEventArgs   e)  
  {  
  //限制只能输入字母和数字  
    if(!((e.KeyChar   >=   'A'   &&   e.KeyChar   <=   'Z')   ||   (e.KeyChar   >=   'a'   &&   e.KeyChar   <=   'z')   ||   (e.KeyChar   >=   '0'   &&   e.KeyChar   <=   '9')   ||((int)e.KeyChar   ==   (int)System.Windows.Forms.Keys.Back)))  
  {  
    e.Handled   =   true;  
  }  
  }  
  Top

2 楼zhtflhs(哼哼)回复于 2006-03-13 13:15:35 得分 3

///   <summary>  
  ///   判断一个字符串是否为数字  
  ///   <font   color="blue">访问级别:</font><font   color="red">private</font>  
  ///   <font   color="blue">创建日期:</font>2005-06-26  
  ///   <font   color="blue">最后修改日期:</font>2005-06-26  
  ///   <font   color="blue">调用方法:</font>  
  ///   <font   color="blue">返回值:bool</font>  
  ///   </summary>  
  ///   <remarks>  
  ///   </remarks>  
  private   bool   IsNumber(String   strNumber)  
  {  
  Regex   objNotNumberPattern=new   Regex("[^0-9.-]");  
  Regex   objTwoDotPattern=new   Regex("[0-9]*[.][0-9]*[.][0-9]*");  
  Regex   objTwoMinusPattern=new   Regex("[0-9]*[-][0-9]*[-][0-9]*");  
  String   strValidRealPattern="^([-]|[.]|[-.]|[0-9])[0-9]*[.]*[0-9]+$";  
  String   strValidIntegerPattern="^([-]|[0-9])[0-9]*$";  
  Regex   objNumberPattern   =new   Regex("("   +   strValidRealPattern   +")|("   +   strValidIntegerPattern   +   ")");  
   
  return   !objNotNumberPattern.IsMatch(strNumber)   &&  
  !objTwoDotPattern.IsMatch(strNumber)   &&  
  !objTwoMinusPattern.IsMatch(strNumber)   &&  
  objNumberPattern.IsMatch(strNumber);  
  }  
  Top

3 楼SimpleDay(今天你穿内裤了吗?)回复于 2006-03-13 13:17:25 得分 0

请给我个VB例子好吗?    
  我想只要数字和小数点的。。。。  
  谢谢Top

4 楼smile9961(good life)回复于 2006-03-13 13:34:17 得分 3

function   resetMe(tmp)  
  客戶端:  
  {  
        if(isNaN(txt.value))  
        {        
            tmp.value=0  
        }  
  }  
   
  <input   id=txt   runat=server   type=text   onpropertychange="resetMe();">  
   
  服務器端:  
    可根據2樓的方法驗證;或者  
    Try  
                                  Double.Parse(txt.text.trim)  
                          Catch   ex   As   Exception  
   
                          End   Try  
   
   
  Top

5 楼dyfzl()回复于 2006-03-13 13:34:37 得分 3

在2005里很容易,在TOOLBOX里有一个正则表达式验证控件能完成此功能Top

6 楼smile9961(good life)回复于 2006-03-13 13:35:26 得分 3

更正:  
   
  客戶端:  
  function   resetMe(tmp)  
  {  
        if(isNaN(txt.value))  
        {        
            tmp.value=0  
        }  
  }  
   
  <input   id=txt   runat=server   type=text   onpropertychange="resetMe();">  
   
  服務器端:  
                          可根據2樓的方法驗證;或者  
   
                          Try  
                                  Double.Parse(txt.text.trim)  
                          Catch   ex   As   Exception  
   
                          End   TryTop

7 楼beiouwolf(beiouwolf)回复于 2006-03-13 13:41:01 得分 3

<input   type="text"   onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\D]/g,''))"   id="tMarketPrice"   onkeyup="javascript:value=value.replace(/[\D]/g,'')">Top

8 楼lubosun(大白菜)回复于 2006-03-13 13:53:45 得分 2

有正则表达式啊Top

9 楼ypzhenxp(走路看着电线杆就撞美女身上了)回复于 2006-03-13 14:14:29 得分 0

正则表达式输入  
  ^(-?\d+)(\.\d+)?$  
   
  如果不知道怎么用正则表达式   ok看下面  
  Top

10 楼ypzhenxp(走路看着电线杆就撞美女身上了)回复于 2006-03-13 14:24:21 得分 0

step1.添加RegularExpressionValidator控件。  
   
  step2.在validationExpress属性里添加以上信息  
   
  step3.在controlToValidate属性里假如你想验证的textbox的id  
   
  ok搞定。Top

11 楼jwd987654321()回复于 2006-03-13 14:25:38 得分 0

要么用脚本要么用正则表达式Top

12 楼juziE2006(橘子)回复于 2006-03-13 15:07:57 得分 0

用正则表达式Top

13 楼ljhkim6()回复于 2006-03-13 15:27:06 得分 0

要么正则表达式  
  要么自己写个函数处理  
  Top

14 楼coley(唉~眼镜又厚了~)回复于 2006-03-13 15:30:14 得分 0

这个还是考虑用js吧  
  js函数查下isNuNTop

15 楼zhuqingkfv123(竹青)回复于 2006-03-13 15:38:32 得分 0

function   ifFloat(str){  
           
          if   (   (   pos   =   str.indexOf(   "."   )   )   !=   -1   ){  
        if   (str.length==1)  
            return   false;  
   
        if   (   (   pos   =   str.indexOf(".",   pos   +   1)   )     !=   -1   )  
            return   false;  
  }  
  else   if((str.charAt(0)=="0")&&(str.length   >   1)){  
         
  return   false;  
   
  }  
   
  for   (   var   i   =   0   ;   i   <   str.length;   i   ++   ){  
      if   ((   str.charAt(i)   <   "0"   ||   str.charAt(i)   >   "9"   )&&(str.charAt(i)!="."))  
          return   false;  
  }  
   
  return   true;  
  }  
   
  可以调用像这样的JS,也可以用添加验证控件,写正则表达式  
  Top

16 楼itmingong(nous+wisdom+courage)回复于 2006-03-14 09:40:05 得分 0

用正则表达式就OK了Top

17 楼eastjazz(德仔&我是小仔仔 www.dezai.cn)回复于 2006-03-14 11:31:31 得分 0

乍么大家都喜欢搞复杂的?用验证控件就很好用了,还要搞些码子出来。Top

18 楼jimu8130(火箭的未来在哪里?)回复于 2006-03-14 11:57:32 得分 0

验证控件+正则表达式Top

19 楼hhcsb(声波)回复于 2006-03-14 13:54:00 得分 0

RegularExpressionValidator控件,并在里面填写正则表达式,OVERTop

20 楼TheSon(TheSon)回复于 2006-03-14 15:15:20 得分 0

客户端脚本控制:  
   
  <SCRIPT   Langugage="JavaScript">  
  attachEvent("onblur",formatIntEx);  
   
  function   formatIntEx(event){  
  formatInt(event.srcElement);  
  }  
  </SCRIPT>  
  服务器端么就是     RegularExpressionValidator控件+正则表达式搞定Top

21 楼litao6664(TT)回复于 2006-03-14 19:18:42 得分 0

最简单的可以加个验证控件,校验类型为数字Top

相关问题

  • 让TextBox只能输入数字!谢谢
  • 请问,如何限制一个TEXTBOX里只能输入数字?
  • 怎么让textbox 中只能输入数字呀~!
  • 如何让一个textbox只能输入数字?
  • vb.net如何让一个textbox只能输入数字?
  • 在textbox中只能输入数字,包括小数点?
  • 还是关于Textbox中只能输入数字的问题?
  • 如何让一个TextBox只能输入数字和 +、- 号.
  • 如何限制再TextBox中只能输入数字?
  • 如何限制textbox中用户只能输入数字??

关键词

  • 正则表达式
  • 数字
  • 控件
  • strnumber
  • keychar
  • regex
  • ismatch
  • 只能输入
  • textbox
  • tmp

得分解答快速导航

  • 帖主:SimpleDay
  • zhtflhs
  • zhtflhs
  • smile9961
  • dyfzl
  • smile9961
  • beiouwolf
  • lubosun

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo