1、Element UI表單綁定綜合示例javascript
1.template代碼html
<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代碼:java
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(); } } };
驗證效果:ui
更多:this