美文网首页Nodejs学习笔记
iview数字校验的坑点

iview数字校验的坑点

作者: 2远 | 来源:发表于2017-06-07 16:31 被阅读3620次

1.表单校验,单独进行数字校验,使用下面的代码是可以的,

 {type: 'number', message: '请输入数字', trigger: 'blur'}

但同时进行数字和为空校验,使用下面的代码是不行的,输入数字的时候一直提示不能为空

 {required: true, message: '电话号码不能为空', trigger: 'blur'},
 {type: 'number', message: '请输入数字', trigger: 'blur'}

修改方法是:

  1. 设置input的类型为text
<Form-item label="收货电话" prop="deliveryMobile">
 <Input type="text" v-model="form.deliveryMobile" placeholder="请输入" />
</Form-item>
  1. 对number的校验需要自定义,而判空可以使用系统自带的

在data中自定义一个队number的校验

            
            const validateMobile = (rule, value, callback) => {
               
                if (!Number.isInteger(+value)) {
                    callback(new Error('请输入数字值'));
                } else {
                    callback();
                }
            };

然后在校验的规则处,填写:

  ruleValidate: {
 deliveryMobile: [
                        {required: true, message: '电话号码不能为空', trigger: 'blur'},
                        {validator: validateMobile, trigger: 'blur'}
                    ]
}

相关文章

网友评论

  • 前端小切图仔:第一种情况改为type=text还是不行
  • 无相__:你这个输入 2. 就验证依然通过
  • 华少_e52d:点赞,小问题不找到根源,也费劲呢
  • glory_前端:没有那么复杂啊,直接在标签里面添加number类型就行啊
    <Input v-model="formValidata.deductDay" :maxlength="48" placeholder="请输入单日扣款限额(元)" number></Input>
  • 小申同学:谢谢 找了好半天 终于解决了

本文标题:iview数字校验的坑点

本文链接:https://www.haomeiwen.com/subject/hlhafxtx.html