js如何验证用户输入的只能是数字?
2015-08-12 21:47
816 查看
方法一 如果判断输入的是否是数字,如果不是数字弹出一个提示:简易代码如下: <body> <input type="text" id="inp"></table> </body> <script> var oInp = document.getElementById('inp'); oInp.onblur=function(){ if(isNaN(Number(oInp.value))){ //当输入不是数字的时候,Number后返回的值是NaN;然后用isNaN判断。 alert('不是数字!') } } </script> 方法二: <script language="javascript"> function CheckMyForm() { var txt = myform.mytext.value; if(checknumber(txt)) { alert("只允许输入数字!"); return false; } return true; } function checknumber(String) { var Letters = "1234567890"; var i; var c; for( i = 0; i < String.length; i ++ ) { c = String.charAt( i ); if (Letters.indexOf( c ) ==-1) { return true; } } return false; } </script> <body> <form name="myform" onSubmit="return CheckMyForm()"> <input type="text" name="mytext"> <input type="submit" name="mysubmit"> </form> </body> 方法三 :正则表达式
最完整最精确的方法:(正则表达式)1) "^\\d+$" //非负整数(正整数 + 0)
"^[0-9]*[1-9][0-9]*$" //正整数
"^((-\\d+)|(0+))$" //非正整数(负整数 + 0)
"^-[0-9]*[1-9][0-9]*$" //负整数
"^-?\\d+$" //整数
"^\\d+(" //非负浮点数(正浮点数 + 0)
"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$" //正浮点数
"^((-\\d+(" //非正浮点数(负浮点数 + 0)
"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$" //负浮点数
"^(-?\\d+)(" //浮点数
2) var r = /^\+?[1-9][0-9]*$/; //正整数
r.test(str);
相关文章推荐
- JS学习十二天----正则表达式的模式匹配
- JSP学习笔记(七):session
- JSP学习笔记(六):cookie的读写
- 解析JSON数据,并从其中的图片地址取图片
- Js实现排序算法
- The JavaScript Event Loop: Explained
- jsoup html
- jstree动态生成树
- JS学习十一天----类和模块
- JSP学习笔记(五):web.xml中的url-pattern的映射规则
- JavaScript基础学习之-JavaScript权威指南-第三章类型、值和变量(2)
- JavaScript基础学习之-JavaScript权威指南-第三章类型、值和变量
- BZOJ 题目1016: [JSOI2008]最小生成树计数(Kruskal+Matrix_Tree)
- 如何按照顺序执行异步ajax的回调函数
- JavaScript基础学习之-JavaScript权威指南-第二章词法结构
- JavaScript基础学习之-JavaScript权威指南-第二章词法结构
- JavaScript 闭包究竟是什么
- JVM性能调优监控工具jps、jstack、jmap、jhat、jstat使用详解
- JS中如何实现每点击一次按钮,显示一条信息
- JavaScript基础学习之-JavaScript权威指南-第三章类型、值和变量