js表单只能填写数字和小数点

页面中有时只需要在表单中填写金额类似信息,只能有数字和小数点,input添加:onkeyup="value=value.replace(/[^\d.]/g,'')"

Tags: javascript

已有 3 条评论

  1. 解决input 属性为 number,maxlength无效情况

    type="number" oninput="if(value.length>11)value=value.slice(0,11)"

  2. 补充

    keyup事件转换字母为大写:
    `onkeyup="toUpperCase(this)"`,其中function函数`obj.value = obj.value.toUpperCase()`
    此方法输入汉字会受到干扰,也可通过css实现,`style="text-transform:uppercase"`,此方法虽然可以实现显示大写字母,但输入小写字母提交后台后仍然为小写,需后端处理为大写。

  3. 此input只允许输入0-9的数字:onkeyup="if(event.keyCode !=37 && event.keyCode != 39) value=value.replace(/\D/g,'')"
    此input只允许输入1-9的数字:onkeyup="if(event.keyCode !=37 && event.keyCode != 39)value=value.replace(/\D/g,'');if(value==0)value=1;" value="1"

添加新评论