最近在用iview开发,写了一个简单的form表单提交,是下拉提交,就一个值,但是一直选了值都报没有填写!很郁闷。
最后找到原因发现ivew的form表单验证默认是支持String类型的,Number类型的就会一直返回false,
所以不管是下拉选择框,还是输入框只要改成String类型或者验证规则加上type:numbr即可(我是修改的验证规则的type,如下)
<Form ref="formValidate" :model="formData" :rules="formRule" :label-width="120"> <FormItem label="选择用户:" prop="groupId"> <!--我的groupId是numbere类型所以一直验证报错 --> <Select v-model="formData.groupId" filterable clearable style="300px"> <Option v-for="item in list" :value="item.value" :key="item.value">{{ item.label }}</Option> </Select> </FormItem> <FormItem class="modal_btn"> <Button @click="setSubmit" type="primary">确定</Button> <Button @click="close" type="default" style="margin-left: 8px">取消</Button> </FormItem> </Form>
对就是下面加了一个 type:'number'
data () { return { formData:{ groupId:'', }, formRule:{ groupId:[ { required: true, message: '请选择用户',type:'number', trigger: 'change' }, ] } } },