1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > VUE之elementUI组件:输入金额的限制(两位小数 不能0或.开头 只能输入数字和.)

VUE之elementUI组件:输入金额的限制(两位小数 不能0或.开头 只能输入数字和.)

时间:2020-01-04 00:43:05

相关推荐

VUE之elementUI组件:输入金额的限制(两位小数 不能0或.开头 只能输入数字和.)

参考了几种金额判断是方法整合了下方法:

<el-form :model="form" :rules="rules"><el-form-item label="金额" required prop="money"><el-input placeholder="请输入金额" v-model="form.money" /></el-form-item></el-form>

date(){const validatorMoney = (rule,value,callback)=>{let isVal = value.toString() //先转换成字符串类型let regnumDot = /[^\d.]/gif(isVal === ''){callback(new Error('请输入金额'))} else if (isVal.indexOf('.') === 0) {this.form.money = '0' + isVal} else if (isVal.indexOf('.') < 0 && isVal != "") {this.form.money = parseFloat(isVal)//如果没有小数点,首位不能为类似于 01、02的金额} else if (regnumDot .test(isVal )) {this.form.money = isVal.replace(/[^\d.]/g,""); //清除“数字”和“.”以外的字符callback(new Error('只能输入“数字”和“.”的字符'))} else if (isVal.split(".").length - 1 > 1) {this.form.money = isVal.replace(/\.{2,}/g,"."); //只保留第一个. 清除多余的} else if (isVal.indexOf('.') >= 1) {this.form.money = isVal.replace(/^(\-)*(\d+)\.(\d\d).*$/,'$1$2.$3');//只能输入两个小数callback(new Error('只能输入两个小数'))}}return {form:{money: 0},rules: {money: [{validator: validatorMoney, trigger: 'change'}]}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。