zoukankan      html  css  js  c++  java
  • JS只能输入数字,数字和字母等的正则表达式

    2011-12-07 11:44

    JS判断只能是数字和小数点
    0.不能输入中文
    1)<input onpaste="return false;" type="text" name="textfield" style="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 onsubmit="return chkIt(this)">
    <input name="n1">
    <input name="n2">
    <input name="smt" type="submit" value="提交">
    </form>
    </body>

    1.文本框只能输入数字代码(小数点也不能输入)
    <input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">
    2.只能输入数字,能输小数点.
    <input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')">
    <input name=txt1 onchange="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}">
    3.数字和小数点方法二
    <input type=text t_value="" o_value="" onkeypress="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" onkeyup="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" onblur="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 onkeyup="value=value.replace(/[\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\d]/g,''))" maxlength=10 name="Numbers">
    5.只能输入英文字母和数字,不能输入中文
    <input onkeyup="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 onkeyup="this.value=this.value.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3')">

    禁止特殊字符:

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

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

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

    只能输入数字:

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


    只能输入英文和数字:
    <input onkeyup="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;">

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

    onkeydown="if(event.keyCode==32) return false"

    只能输入中文和英文:
    onkeyup="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" onkeypress="return ValidateSpecialCharacter();" onblur="validate(this)"/>

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

     不能为空
    <input onblur="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" onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')">

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

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

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

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

    3.数字和小数点方法二
    <input type=text t_value="" o_value="" onkeypress="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" onkeyup="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" onblur="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 onkeyup="value=value.replace(/[/d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[/d]/g,''))" maxlength=10 name="Numbers">

    5.只能输入英文字母和数字,不能输入中文
    <input onkeyup="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 onkeyup="this.value=this.value.replace(/^(/-)*(/d+)/.(/d/d).*$/,'$1$2.$3')">

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

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

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

    总而言之:先在<input>里输入onkeyup="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)" onpaste="return false" oncontextmenu="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" onkeyup="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 onkeydown="onlyNum();" style="ime-mode:Disabled>
    结语,其实

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

    只允许输入数字
    <input name="username" type="text" onkeyup="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" onkeyup="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 onkeydown="onlyNum();" style="ime-mode:Disabled>
    结语,其实

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

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

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

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

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

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

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

  • 相关阅读:
    JavaScript对原始数据类型的拆装箱操作
    Javascript继承(原始写法,非es6 class)
    动态作用域与词法作用域
    自行车的保养
    探索JS引擎工作原理 (转)
    C语言提高 (7) 第七天 回调函数 预处理函数DEBUG 动态链接库
    C语言提高 (6) 第六天 文件(续) 链表的操作
    C语言提高 (5) 第五天 结构体,结构体对齐 文件
    C语言提高 (4) 第四天 数组与数组作为参数时的数组指针
    C语言提高 (3) 第三天 二级指针的三种模型 栈上指针数组、栈上二维数组、堆上开辟空间
  • 原文地址:https://www.cnblogs.com/yzenet/p/2440312.html
Copyright © 2011-2022 走看看