关于input的一些js

/*
只能输入中文
*/
<input type="text"  onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))" class="txt" placeholder="请输入中文">
/*
只能输入数字
*/
<input type="tel" onkeyup='this.value=this.value.replace(/\D/gi,"")' class="txt" placeholder="请输入数字">
/*
不能输入中文
*/
<input type="text" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[\u4e00-\u9fa5]/g,''))" onkeyup="this.value=this.value.replace(/[\u4e00-\u9fa5]/g,'')" />
/*
不能输入中文和空格
*/
<input type="text" onkeyup="value=value.replace(/[^\w\.\/]/ig,'')" />
/*
只能输入数字和一位小数点和小数点后面两位小数
*/
<input type="text" onkeyup="num(this)" />
function num(obj) {
                    obj.value = obj.value.replace(/[^\d.]/g, "");  //清除“数字”和“.”以外的字符
                    obj.value = obj.value.replace(/\.{2,}/g, "."); //只保留第一个. 清除多余的
                    obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
                    obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3');//只能输入两个小数
                    if (obj.value.indexOf(".") < 0 && obj.value != "") {//以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
                        obj.value = parseFloat(obj.value);
                    }
                }
/*
手机号码替换空格
*/
<input type="tel" maxLength="13" placeholder="请输入手机号码" class="aui-font-size-14" id="phone" onkeyup="this.value = padStr(this.value.replace(/\D/g, ''), [3, 7], ' ', this);">
function padStr(value, position, padstr, inputElement){
        position.forEach((item, index) => {
    if (value.length > item + index) {
      value = value.substring(0, item + index) + padstr + value.substring(item + index)
    }
  })
  value = value.trim();
  // 解决安卓部分浏览器插入空格后光标错位问题
  requestAnimationFrame(() => {
    inputElement.setSelectionRange(value.length, value.length);
  })
  return value;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值