最近在用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="width: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' }, ] } } },