控制input框输入数字且保留2位小数

1,487 阅读1分钟

控制输入框只能输入数字及小数点(不能输入负数):

 onkeyup="value=value.replace(/[^\d.]/g,'')"

输入框保留2位小数并去掉末尾多余的0:

// 输入框保留2位小数并去掉末尾多余的0
export const verify2Decimal = (value) => {
  let p2 = value === '-' ? value : parseFloat(value).toFixed(2); //保留n位就写toFixed(n)
  value =
        value === ''
          ? ''
          : p2 === '-'
            ? '-'
            : isNaN(p2)
              ? ''
              : /\.0?$/.test(value)
                ? value
                : p2.replace(/0+$/, '').replace(/\.$/, '');
  return value
}
// 用onblur事件调用
onblur(e=>{
e.target.data = verify2Decimal(e.target.data)
})