当前位置: 首页 > news >正文

JS只能输入数字,数字和字母等的正则表达式

 

2011-12-07 11:44

JS判断只能是数字和小数点
0.不能输入中文
1)<input οnpaste="return false;" type="text" name="textfield" style="width:400px; ime-mode:disabled" value="">
2)<script>
function chkIt(frm){
  if (frm.n1.value.length>0&&frm.n1.value.match(/[\x01-\xFF]*/)==false){
    alert('n1不能输入中文!')
    frm.n1.focus();
    return false;
  }
}
</script>
<body>
<form οnsubmit="return chkIt(this)">
<input name="n1">
<input name="n2">
<input name="smt" type="submit" value="提交">
</form>
</body>

1.文本框只能输入数字代码(小数点也不能输入)
<input οnkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">
2.只能输入数字,能输小数点.
<input οnkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')">
<input name=txt1 οnchange="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}">
3.数字和小数点方法二
<input type=text t_value="" o_value="" οnkeypress="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" οnkeyup="if(!this.value.match(/^[\+\-]?\d*?\.?\d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?)?$/))this.o_value=this.value" οnblur="if(!this.value.match(/^(?:[\+\-]?\d+(?:\.\d+)?|\.\d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^\.\d+$/))this.value=0+this.value;if(this.value.match(/^\.$/))this.value=0;this.o_value=this.value}">
4.只能输入字母和汉字
<input οnkeyup="value=value.replace(/[\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\d]/g,''))" maxlength=10 name="Numbers">
5.只能输入英文字母和数字,不能输入中文
<input οnkeyup="value=value.replace(/[^\w\.\/]/ig,'')">
6.只能输入数字和英文<font color="Red">chun</font>
<input onKeyUp="value=value.replace(/[^\d|chun]/g,'')">
7.小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号:
<input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || /\.\d\d$/.test(value))event.returnValue=false">
8.小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号:

<input οnkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')">

禁止特殊字符:

 

onKeyPress="if(event.keyCode < 45 || event.keyCode > 57 ) event.returnValue = false;"

 

只能输入汉字:
<input οnkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/u4E00-/u9FA5]/g,''))">

style="ime-mode:disabled"禁止汉字输入法

只能输入数字:

<input οnkeyup="value=value.replace(/[^/d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/d]/g,''))">


只能输入英文和数字:
<input οnkeyup="value=value.replace(/[/W]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/d]/g,''))">

控制输入框只能输入文字或数字,也可以不允许输入特殊字符
这里不允许输入如下字符: (像 ^&* 等)<br>
<textarea rows=2 cols=20 name=comments onKeypress="if ((event.keyCode > 32 && event.keyCode < 48) || (event.keyCode > 57 && event.keyCode < 65) || (event.keyCode > 90 && event.keyCode < 97)) event.returnValue = false;">

只禁止空格输入
οnkeyup="value=value.replace(//s/g,'')"

οnkeydοwn="if(event.keyCode==32) return false"

只能输入中文和英文:
οnkeyup="value=value.replace(/[^/a-zA-Z/u4E00-/u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/a-zA-Z/u4E00-/u9FA5]/g,''))"

 

不允许输入特殊字符和空格:

<input id="code" οnkeypress="return ValidateSpecialCharacter();" οnblur="validate(this)"/>

 

————————————————————————————————————————

 不能为空
<input οnblur="if(this.value.replace(/^ +| +$/g,'')=='')alert('不能为空!')">

判断字符由字母和数字,下划线,点号组成.且开头的只能是下划线和字母
/^([a-zA-z_]{1})([\w]*)$/g.test(str)

只能输入数字
<input name="text" type="text" id="NewPage" onKeyUp="value=value.replace(/\D/g,'')" onafterpaste="value=value.replace(/\D/g,'')" >

只能输入中文
<input type="text" οnkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')">

只能输入英文
<input type="text" οnkeyup="value=value.replace(/[^\a-\z\A-\Z]/g,'')">
<input type="text" οnkeyup="value=value.replace(/[^a-zA-Z]/g,'')">

 --------------------------------------------------------------------------------------------------------------------

1.文本框只能输入数字代码(小数点也不能输入)
<input οnkeyup="this.value=this.value.replace(//D/g,'')" onafterpaste="this.value=this.value.replace(//D/g,'')">

2.只能输入数字,能输小数点.
<input οnkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')">
<input name=txt1 οnchange="if(//D/.test(this.value)){alert('只能输入数字');this.value='';}">

3.数字和小数点方法二
<input type=text t_value="" o_value="" οnkeypress="if(!this.value.match(/^[/+/-]?/d*?/.?/d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[/+/-]?/d+(?:/./d+)?)?$/))this.o_value=this.value" οnkeyup="if(!this.value.match(/^[/+/-]?/d*?/.?/d*?$/))this.value=this.t_value;else this.t_value=this.value;if(this.value.match(/^(?:[/+/-]?/d+(?:/./d+)?)?$/))this.o_value=this.value" οnblur="if(!this.value.match(/^(?:[/+/-]?/d+(?:/./d+)?|/./d*?)?$/))this.value=this.o_value;else{if(this.value.match(/^/./d+$/))this.value=0+this.value;if(this.value.match(/^/.$/))this.value=0;this.o_value=this.value}">

4.只能输入字母和汉字
<input οnkeyup="value=value.replace(/[/d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[/d]/g,''))" maxlength=10 name="Numbers">

5.只能输入英文字母和数字,不能输入中文
<input οnkeyup="value=value.replace(/[^/w/.//]/ig,'')">

6.只能输入数字和英文<font color="Red">chun</font>
<input onKeyUp="value=value.replace(/[^/d|chun]/g,'')">

7.小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号:
<input onKeyPress="if((event.keyCode<48 || event.keyCode>57) && event.keyCode!=46 || //./d/d$/.test(value))event.returnValue=false">

8.小数点后只能有最多两位(数字,字母,中文都可输入),可以输入运算符号:
<input οnkeyup="this.value=this.value.replace(/^(/-)*(/d+)/.(/d/d).*$/,'$1$2.$3')">

 

只能输入中文、英文、数字、@符号和.符号
<input type="text" οnkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\@\.]/g,'')">

只允许输入英文,且不能粘贴也无法弹出粘贴菜单
<input type="text" οnkeyup="value=value.replace(/[^\a-\z\A-\Z]/g,'')" οnkeydοwn="fncKeyStop(event)" οnpaste="return false" oncontextmenu = "return false"/>

只能输入数字和点号(注意:在[^\d\.]里的d不能写成大写D,否则就变成除了数字以外的所有字符)
<input name="price" type="text" size="8" maxlength="8" οnkeyup="value=value.replace(/[^\d\.]/g,'')" >

总而言之:先在<input>里输入οnkeyup="value=value.replace(/[^\X]/g,'')" 然后在(/[\X]/g,'')里的X换成你想输入的代码就可以了

中文:u4E00-u9FA5
数字:d、0-9
英文:a-z、A-Z
其它符号@,点或其它符号.也可以多个,用\隔开就行了.
例如:
中、英文和数字加@符号加点符号:\a-\z\A-\Z0-9\u4E00-\u9FA5\@\.

若 想在文本框里不能右键弹出菜单和不能粘贴进复制的信息的话就要在<input>里输入 onKeyDown="fncKeyStop(event)" οnpaste="return false" οncοntextmenu="return false;"

---------------------------------------------------------------------------------------------------------------------------------------

 

 

 

 

其一,只允许输入数字和小数点。
<input onKeypress="return (/[/d.]/.test(String.fromCharCode(event.keyCode)))" style="ime-mode:Disabled">

其二,判断的更详细一些,甚至22..2这样不算数字也判断得出来

<script>
function check(){
if (isNaN(tt.value))
{alert("非法字符!");
tt.value="";}
}
</script>
<input type="text" name="tt" οnkeyup="check();">

其三,只允许输入整数。其实也完全可以根据第三条来举一反三做一些限制。

<script language=javascript>
function onlyNum()
{
if(!(event.keyCode==46)&&!(event.keyCode==8)&&!(event.keyCode==37)&&!(event.keyCode==39))
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
event.returnValue=false;
}
</script><input οnkeydοwn="onlyNum();" style="ime-mode:Disabled>
结语,其实

style="ime-mode:Disabled
这句是比较实用的。意为关闭输入法。省得有些人开着全角输入数字,结果输入不进去来找你哭天抹泪的,还怪你设计的不好。

只允许输入数字
<input name="username" type="text" οnkeyup="value=this.value.replace(//D+/g,'')">

只允许输入英文字母、数字和下划线(以下二种方法实现)
<input name="userna其一,只允许输入数字和小数点。
<input onKeypress="return (/[/d.]/.test(String.fromCharCode(event.keyCode)))" style="ime-mode:Disabled">

其二,判断的更详细一些,甚至22..2这样不算数字也判断得出来

<script>
function check(){
if (isNaN(tt.value))
{alert("非法字符!");
tt.value="";}
}
</script>
<input type="text" name="tt" οnkeyup="check();">

其三,只允许输入整数。其实也完全可以根据第三条来举一反三做一些限制。

<script language=javascript>
function onlyNum()
{
if(!(event.keyCode==46)&&!(event.keyCode==8)&&!(event.keyCode==37)&&!(event.keyCode==39))
if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105)))
event.returnValue=false;
}
</script><input οnkeydοwn="onlyNum();" style="ime-mode:Disabled>
结语,其实

style="ime-mode:Disabled
这句是比较实用的。意为关闭输入法。省得有些人开着全角输入数字,结果输入不进去来找你哭天抹泪的,还怪你设计的不好。

只允许输入数字
<input name="username" type="text" οnkeyup="value=this.value.replace(//D+/g,'')">

只允许输入英文字母、数字和下划线(以下二种方法实现)
<input name="username" type="text" style="ime-mode:disabled">
<input name="username" type="text" οnkeyup="value=value.replace(/[^/w/.//]/ig,'')">

只允许输入英文字母、数字和&=@
<input name="username" type="text" οnkeyup="value=value.replace(/[^/w=@&]|_/ig,'')">

只允许输入汉字
<input name="username" type="text" οnkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')">
me" type="text" style="ime-mode:disabled">
<input name="username" type="text" οnkeyup="value=value.replace(/[^/w/.//]/ig,'')">

只允许输入英文字母、数字和&=@
<input name="username" type="text" οnkeyup="value=value.replace(/[^/w=@&]|_/ig,'')">

只允许输入汉字
<input name="username" type="text" οnkeyup="value=value.replace(/[^/u4E00-/u9FA5]/g,'')">

转载于:https://www.cnblogs.com/yzenet/archive/2012/04/10/2440312.html

相关文章:

  • DropdownList内容树状展示 字段前空格不显示
  • 物联网与3G关系谈
  • 地图开发资源汇总
  • readText
  • 第十三章 鲁智深为什么是天孤星
  • Orx 1.2正式发布
  • 【HTML+CSS+JavaScript】网页实战开发笔记之一——HTML的头部信息里你不知道的事...
  • 百度推手机操作系统靠谱吗?--手机操作系统+移动广告分发平台
  • 基于NicheStack协议栈的网络例程分析及客户端程序设计
  • Java开源的FTP Server——Apache FtpServer
  • 【C++算法与数据结构学习笔记------单链表实现多项式】
  • 新书《路由器配置与管理完全手册——H3C篇》目录抢鲜暴光
  • cmd控制台下的编码方式
  • 用 Linux 分享网际网路连线 (Internet Connection Sharing)
  • [原]浅谈几种服务器端模型——反应堆的设计
  • Akka系列(七):Actor持久化之Akka persistence
  • eclipse(luna)创建web工程
  • JavaScript DOM 10 - 滚动
  • JavaScript标准库系列——Math对象和Date对象(二)
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • spring boot 整合mybatis 无法输出sql的问题
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 机器学习 vs. 深度学习
  • 基于webpack 的 vue 多页架构
  • 聚簇索引和非聚簇索引
  • 每个JavaScript开发人员应阅读的书【1】 - JavaScript: The Good Parts
  • 如何用vue打造一个移动端音乐播放器
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • ## 临床数据 两两比较 加显著性boxplot加显著性
  • #LLM入门|Prompt#1.7_文本拓展_Expanding
  • #我与Java虚拟机的故事#连载03:面试过的百度,滴滴,快手都问了这些问题
  • (01)ORB-SLAM2源码无死角解析-(66) BA优化(g2o)→闭环线程:Optimizer::GlobalBundleAdjustemnt→全局优化
  • (02)Cartographer源码无死角解析-(03) 新数据运行与地图保存、加载地图启动仅定位模式
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (11)MATLAB PCA+SVM 人脸识别
  • (3)(3.2) MAVLink2数据包签名(安全)
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (ZT) 理解系统底层的概念是多么重要(by趋势科技邹飞)
  • (原创)攻击方式学习之(4) - 拒绝服务(DOS/DDOS/DRDOS)
  • (转)程序员疫苗:代码注入
  • .gitignore文件---让git自动忽略指定文件
  • .NET 应用架构指导 V2 学习笔记(一) 软件架构的关键原则
  • .Net6支持的操作系统版本(.net8已来,你还在用.netframework4.5吗)
  • .NET国产化改造探索(一)、VMware安装银河麒麟
  • @NoArgsConstructor和@AllArgsConstructor,@Builder
  • @Pointcut 使用
  • @ResponseBody
  • [ vulhub漏洞复现篇 ] ThinkPHP 5.0.23-Rce
  • [2019.3.5]BZOJ1934 [Shoi2007]Vote 善意的投票
  • [bzoj1901]: Zju2112 Dynamic Rankings
  • [C++] Windows中字符串函数的种类
  • [ERROR]-Error: failure: repodata/filelists.xml.gz from addons: [Errno 256] No more mirrors to try.
  • [Gamma]阶段测试报告
  • [ICCV2017]Neural Person Search Machines