搜 索

指定文本框中只能输入的字符类型的几种方法

编辑:QTOOL.NET日期:2019-09-11376

当我们在制作页面的时候,需要限制文本框中输入的文字字符类型,该怎样做.
可以使用js与正则进行验证判断。
常见的一些正则有:
数字与文字字母: ^[a-zA-Z0-9\u4e00-\u9fa5]+$ 
整数:^-?\\d+$    
正整数:^[0-9]*[1-9][0-9]*$   
非负整数(包括0):^\\d+$  
负整数:^-[0-9]*[1-9][0-9]*$  
非正整数(包括0):^((-\\d+)|(0+))$
浮点数:^(-?\\d+)(\\.\\d+)?$ 
非负浮点数(正浮点数 + 0):^\\d+(\\.\\d+)?$ 
非正浮点数:^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$ 
英文字母:^[A-Za-z]+$ 
大写英文字母:^[A-Z]+$ 
小写英文字母:^[a-z]+$ 
数字、字母与下划线:^\\w+$  
数字与字母:^[A-Za-z0-9]+$ 
email地址:^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$  
url地址:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$ 
 
 <script type="text/javascript">
      $("#指定input的id").keyup(function(){
      var txtkey=$(this);  
             if(/[^\d]/.test(txtkey.val())){
              var glkey=txtkey.val().replace(/[^\d]/g,'');  //过滤字符串
              $(this).val(glkey);  
             }  
      })
 
</script>
或者直接在input标签中加入正则进行判断
只能再文本框输入数字
<input onkeyup="value=value.replace(/[^0-9]/g,'')" onpaste="value=value.replace(/[^0-9]/g,'')" oncontextmenu = "value=value.replace(/[^0-9]/g,'')">
 
只能再文本框输入英文
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z]/g,'')" />
 
只能再文本框输入英文、数字
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9]/g,'')" />
 
只能再文本框输入输入中文
<input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" />
 
只能再文本框输入中文、英文、数字
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,'')" />
 
只能再文本框输入数字、小数点
<input onkeyup="value=value.replace(/[^\0-9\.]/g,'')" />
 
只能再文本框输入中文、英文、数字、小数点
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,'')" />
 
只能再文本框输入中文、英文、数字、空格
<input onkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\ ]/g,'')" />
 
一般,只需要在input标签中的onkeyup属性中写上
"value=value.replace(/[^\正则]/g,'')"即可
但如果想要对右键或复制粘贴字符串进行类型控制,还需要再
若想在文本框里不能右键弹出菜单和不能粘贴进复制的信息的话input标签里输入与onkeyup相同的正则代码:onpaste="value=value.replace(/[^\正则]/g,'')" oncontextmenu="value=value.replace(/[^\正则]/g,'')"

TAG标签:js正则
此文章由QTOOL.NET编辑
最新文章

热门标签