//先把非数字的都替换掉,除了数字和.和/
            obj.value = obj.value.replace(/[^\-\d./]/g, "");

//必须保证第一个为数字而不是.
            obj.value = obj.value.replace(/^\./g, "");

//保证只有出现一个.而没有多个.
            obj.value = obj.value.replace(/\.{2,}/g, ".");

//保证只有出现一个-而没有多个.
            obj.value = obj.value.replace(/\-{2,}/g, "-");

//保证.只出现一次,而不能出现两次以上
            obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");

//保证.只出现一次"-",而不能出现两次以上
            obj.value = obj.value.replace("-", "$#$").replace(/\-/g, "").replace("$#$", "-");

if (obj.value.indexOf('-') > 0) {
                obj.value = obj.value.replace("-", "");
            }
            //保证只有出现一个.而没有多个/
            obj.value = obj.value.replace(/\/{2,}/g, "/");
            //保证/只出现一次,而不能出现两次以上
            obj.value = obj.value.replace("/", "$#$").replace(/\//g, "").replace("$#$", "/");
            //先输入了/,就不能再输入数字了
            var re1 = new RegExp(/^\/.*/);
            if (/^\/.*/.test(obj.value)) {
                obj.value = obj.value.replace(/[\d.]/g, "");

}
                //先输入数字,就不能再输入/了
            else if (/^\d*/.test(obj.value)) {
                obj.value = obj.value.replace(/[\/]/g, "");

}

js中——限制文本框输入非数字的更多相关文章

  1. JS和vue文本框输入改变p标签的内容测试

    文本框输入,p标签的内容自动变成文本框的内容,如下是三种方法的测试: 方法1:JS里的onchange,当文本框内容改变事件,该事件里写的方法是,获取p标签本身,然后获取文本框的值,赋值给变量,最后给 ...

  2. js各种验证文本框输入格式

    不能为空 <input onblur="if(this.value.replace(/^ +| +$/g,'')=='')alert('不能为空!')"> 只能输入英文 ...

  3. js中input文本框设置和移除默认值

    这里想实现的效果是:设置和移除文本框默认值,如下图鼠标放到文本框中的时候,灰字消失. 1.可以用简单的方式,就是给input文本框加上onfocus属性,如下代码: <input id=&quo ...

  4. 控制input框输入非数字

    <input type="text" onkeyup="value=value.replace(/[^\d.]/g,'')">

  5. js正则表达式限制文本框只能输入数字,小数点,英文字母

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

  6. JS 正则表达式 控制文本框只能输入中文、英文、数字与指定特殊符号

    JS 正则表达式 控制文本框只能输入中文.英文.数字与指定特殊符号(屏蔽表情输入) onkeyup:释放键盘事件 onpaste:粘贴事件 oncontextmenu :鼠标右击事件 只能输入中文: ...

  7. JS文本框输入限制

    1上面的文本框只能输入数字代码(小数点也不能输入): CODE: <input onkeyup="this.value=this.value.replace(/\D/g,'')&quo ...

  8. POS开发问题 - 输入非数字弹出提示框的实现

    业务场景: 一个输入框,如果输入非数字,那么弹出提示框,如下图 点击确定,输入框自动清空非数字的输入,并且自动获得焦点,如图: 实现方案: 实现的想法: 给输入框添加一个 input 事件,给输入框绑 ...

  9. 实现:C#窗体中的文本框只能输入中文汉字,其他输入无效。问:正则表达式怎么用?

    原文:实现:C#窗体中的文本框只能输入中文汉字,其他输入无效.问:正则表达式怎么用? private void textBox1_KeyPress(object sender, KeyPressEve ...

随机推荐

  1. Hander创建消息

    每一个消息都需要被指定的Handler处理,通过Handler创建消息便可以完成此功能.Android消息机制中引入了消息池.Handler创建消息时首先查询消息池中是否有消息存在,如果有直接从消息池 ...

  2. Git入门之在IDEA中使用Git上传maven项目

    下载安装git客户端: 参考博文:https://www.cnblogs.com/java-maowei/p/5950930.html 在IDEA怎么使用git上传spring的maven项目详解: ...

  3. Jenkins的详细安装及使用

    操作环境:Windows 踩过的坑:1,报错403,因为tomcat限制了访问地址(https://www.cnblogs.com/luoruiyuan/p/6518508.html) 2,构建spr ...

  4. kafka入门学习---1 启动kakfa

    1.查看kafka生产者产生的数据 kafka-console-consumer.sh --zookeeper hadoop-:,hadoop-:,hadoop-: -topic kafkademo ...

  5. Elasticsearch安装配置问题

    1.配置服务 ip 和 端口 进入 elasticsearch 安装目录,打开 config/elasticsearch.yml 配置 net.host 和 http.port net.host: 0 ...

  6. Mac下也能用抓包工具Fiddler

    一直以来都是在Windows底下工作,对于抓包工具,自然而然当属Fiddler最最出色.不过Fiddler是在.Net runtime环境下运行的,所以想要在Mac下使用,有些困难. 在试过了Char ...

  7. JAVA RMI分布式原理和应用

    RMI(Remote Method Invocation)是JAVA早期版本(JDK 1.1)提供的分布式应用解决方案,它作为重要的API被广泛的应用在EJB中.随着互联网应用的发展,分布式处理任务也 ...

  8. R语言与概率统计(三) 多元统计分析(上)

    > #############6.2一元线性回归分析 > x<-c(0.10,0.11,0.12,0.13,0.14,0.15,0.16,0.17,0.18,0.20,0.21,0. ...

  9. Spring-Kafka —— KafkaListener禁止自启动

    应用服务启动时,KafkaListener默认会自动启动进行消费,如果想不自动消费,可以设置AutoStartup属性值为false @Override @KafkaListener(id = Con ...

  10. System.arraycopy() 数组复制方法

    一.深度复制和浅度复制的区别    Java数组的复制操作可以分为深度复制和浅度复制,简单来说深度复制,可以将对象的值和对象的内容复制;浅复制是指对对象引用的复制. 二.System.arraycop ...