js怎么控制文本框只能输入数字

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js怎么控制文本框只能输入数字相关的知识,希望对你有一定的参考价值。

参考技术A

1、首先打开hbuilder编辑器,新建一个html文档,在html文档中输入一个input框,设置形式为text,给它一个id,命名为ant并在上方的style里设置简单的样式:

2、然后在下方新建一个script标签,首先用window.onload设置当文档内容完全加载完毕再去执行函数中的代码,然后获取文本框对象,接着为文本框注册keyup事件处理函数,判断输入为非数字时弹出警告:

3、最后用onbeforepaste和oncontextmenu函数防止用户右键复制黏贴:


4、写好代码后,来到编辑器右侧的浏览器,在这里输入一段数字:

5、当输入字母时,就会弹出警告了,至此js控制文本框只能输入数字的功能就实现了:

js控制文本框只能输入中文英文数字与指定特殊符号

原文:http://www.open-open.com/code/view/1433592419640

 

JS 控制文本框只能输入数字 
<input onkeyup="value=value.replace(/[^0-9]/g,‘‘)"onpaste="value=value.replace(/[^0-9]/g,‘‘)" oncontextmenu ="value=value.replace(/[^0-9]/g,‘‘)"> 

JS 控制文本框只能输入数字、小数点 
<inputonkeyup="value=value.replace(/[^\0-9\.]/g,‘‘)"onpaste="value=value.replace(/[^\0-9\.]/g,‘‘)" oncontextmenu ="value=value.replace(/[^\0-9\.]/g,‘‘)"> 

JS 控制文本框只能输入英文 
<inputonkeyup="value=value.replace(/[^\a-\z\A-\Z]/g,‘‘)"onpaste="value=value.replace(/[^\a-\z\A-\Z]/g,‘‘)" oncontextmenu ="value=value.replace(/[^\a-\z\A-\Z]/g,‘‘)"> 

JS 控制文本框只能输入英文、数字 
<inputonkeyup="value=value.replace(/[^\a-\z\A-\Z0-9]/g,‘‘)"onpaste="value=value.replace(/[^\a-\z\A-\Z0-9]/g,‘‘)" oncontextmenu="value=value.replace(/[^\a-\z\A-\Z0-9]/g,‘‘)"> 

JS 控制文本框只能输入中文 
<inputonkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,‘‘)"onpaste="value=value.replace(/[^\u4E00-\u9FA5]/g,‘‘)" oncontextmenu="value=value.replace(/[^\u4E00-\u9FA5]/g,‘‘)"> 

JS 控制文本框只能输入中文、英文、数字 
<inputonkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,‘‘)"onpaste="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,‘‘)"oncontextmenu ="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5]/g,‘‘)"> 

JS 控制文本框只能输入中文、英文、数字、空格 
<inputonkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\]/g,‘‘)"onpaste="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\]/g,‘‘)" oncontextmenu ="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\]/g,‘‘)"> 

JS 控制文本框只能输入中文、英文、数字、小数点 

<inputonkeyup="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,‘‘)"onpaste="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,‘‘)"oncontextmenu ="value=value.replace(/[^\a-\z\A-\Z0-9\u4E00-\u9FA5\.]/g,‘‘)">

 

 

总而言之:

 先在‘<input>’ 里输入

    onkeyup="value=value.replace(/[^\X]/g,‘‘)"

然后在(/[\X]/g,‘‘)里的 X换成你想输入的代码就可以了,

中文u4E00-u9FA5,数字0-9,英文a-z\A-Z,其它符号@、点或其它符号。

也可以多个,用\隔开就行了。
例如:中英文 + 数字 + @符号 + 点符号  \a-\z\A-\Z0-9\u4E00-\u9FA5\@\.

若想在文本框里不能右键弹出菜单和不能粘贴进复制的信息的话

就要在‘<input>‘里输入onpaste="return false" oncontextmenu="return false;"

























以上是关于js怎么控制文本框只能输入数字的主要内容,如果未能解决你的问题,请参考以下文章

js控制文本框只能输入中文英文数字与指定特殊符号

js验证文本框只能输入正整数或带一位小数的数,该怎么写呢?

js验证如何限制文本框只能输入数字

js 控制文本框只能输入中文英文数字等

C# 文本框只能输入数字

js验证如何限制文本框只能输入数字