一、Element UI表单绑定综合示例

1.template代码

<template>
<el-form :model="ruleForm" :status-icon="true" :rules="rules" ref="ruleForm" label-width="100px">
<el-form-item label="活动名称" prop="name"
:rules="[
{required:true,message:'请输入名称'},
{min:3,max:10,message:'长度3到5个字符',trigger:'blur'}
]">
<el-input v-model="ruleForm.name"></el-input>
</el-form-item>

<el-form-item label="活动区域" prop="region"
:rules="[
{required:true,message:'请选择区域',trigger:'change'}
]">
<el-select v-model="ruleForm.region" placheholder="请选择活动区域">
<el-option label="区域一" value="shanghai"></el-option>
<el-option label="区域二" value="beijing"></el-option>
</el-select>
</el-form-item>

<el-form-item label="活动时间">
<el-col :span="11">
<el-form-item prop="date1">
<el-date-picker type="date" placeholder="选择日期" v-model="ruleForm.date1"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="2" class="line">-</el-col>
<el-col :span="11">
<el-form-item prop="date2">
<el-time-picker type="fixed-time" placeholder="选择时间" v-model="ruleForm.date2"></el-time-picker>
</el-form-item>
</el-col>
</el-form-item>

<el-form-item label="即时配送" prop="delivery">
<el-switch v-model="ruleForm.delivery"></el-switch>
</el-form-item>
<el-form-item label="活动性质" prop="type">
<el-checkbox-group v-model="ruleForm.type">
<el-checkbox label="美食/餐厅线上活动" name="type"></el-checkbox>
<el-checkbox label="递推果冻" name="type"></el-checkbox>
<el-checkbox label="线下主题活动" name="type"></el-checkbox>
<el-checkbox label="单纯品牌曝光" name="type"></el-checkbox>
</el-checkbox-group>
</el-form-item>
<el-form-item label="特殊资源" prop="resource">
<el-radio-group v-model="ruleForm.resource">
<el-radio label="线上品牌商赞助"></el-radio>
<el-radio label="线下场地免费"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="活动形式" prop="desc">
<el-input type="textarea" v-model="ruleForm.desc"></el-input>
</el-form-item>

<el-form-item>
<el-button type="primary" @click="submitForm('ruleForm')">提交</el-button>
<el-button @click="resetForm('ruleForm')">重置</el-button>
</el-form-item>
</el-form>
</template>

2.js代码:

export default {
data() {
return {
ruleForm: {},
rules: {
date1:[
{type:'date',required:true,message:'请选择日期',trigger:'change'}
],
date2:[
{type:'date',required:true,message:'请选择日期',trigger:'change'}
],
type:[
{type:'array',required:true,message:'请至少选择一个活动性质',trigger:'change'}
],
resource:[
{required:true,message:'请选择活动资源',trigger:'change'}
]
}
};
},
methods: {
//提交
submitForm(formName) {
this.$refs[formName].validate(valid => {
if (valid) {
alert("可以提交了");
} else {
return false;
}
});
},
//重置
resetForm(formName){
this.$refs[formName].resetFields();
}
}
};

 

验证效果:

Vue Element表单绑定(三)综合示例_重置