// 价格输入框 decimal: 精度
export function inputPrice(val, decimal) {
val = val.replace(/[^d.]/g, '') // 清除“数字”和“.”以外的字符
val = val.replace(/.{2,}/g, '.') // 只保留第一个. 清除多余的
val = val
.replace('.', '$#$')
.replace(/./g, '')
.replace('$#$', '.')
switch (decimal) {
case 1:
val = val.replace(/^(-)*(d+).(d{1}).*$/, '$1$2.$3')
break
case 2:
val = val.replace(/^(-)*(d+).(d{2}).*$/, '$1$2.$3')
break
case 3:
val = val.replace(/^(-)*(d+).(d{3}).*$/, '$1$2.$3')
break
case 4:
val = val.replace(/^(-)*(d+).(d{4}).*$/, '$1$2.$3')
break
case 5:
val = val.replace(/^(-)*(d+).(d{5}).*$/, '$1$2.$3')
break
case 6:
val = val.replace(/^(-)*(d+).(d{6}).*$/, '$1$2.$3')
break
case 7:
val = val.replace(/^(-)*(d+).(d{7}).*$/, '$1$2.$3')
break
case 8:
val = val.replace(/^(-)*(d+).(d{8}).*$/, '$1$2.$3')
break
case 9:
val = val.replace(/^(-)*(d+).(d{9}).*$/, '$1$2.$3')
break
default:
val = val.replace(/^(-)*(d+).().*$/, '$1$2.$3')
break
}
// 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
if (val.indexOf('.') < 0 && val != '') {
if (val.length > 9) {
val = val.substr(0, 9)
}
val = parseFloat(val)
}
return val
}