<template>
<h3>表单1</h3>
<el-form
ref="ruleFormRef"
:model="ruleForm"
:rules="rules"
label-width="auto"
>
<el-form-item label="Activity name" prop="name">
<el-input v-model="ruleForm.name" />
</el-form-item>
<el-form-item label="Activity zone" prop="region">
<el-select v-model="ruleForm.region" placeholder="Activity zone">
<el-option label="Zone one" value="shanghai" />
<el-option label="Zone two" value="beijing" />
</el-select>
</el-form-item>
<el-form-item label="Instant delivery" prop="delivery">
<el-switch v-model="ruleForm.delivery" />
</el-form-item>
</el-form>
<br />
<hr />
<br />
<h3>表单2</h3>
<el-form
ref="ruleFormRef2"
:model="ruleForm"
:rules="rules"
label-width="auto"
>
<el-form-item label="Activity form" prop="desc">
<el-input v-model="ruleForm.desc" type="textarea" />
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm(ruleFormRef)">
Create
</el-button>
<el-button @click="resetForm(ruleFormRef)"> Reset</el-button>
</el-form-item>
</el-form>
</template>
<script setup>
const { proxy } = getCurrentInstance();
const ruleForm = reactive({});
const rules = {
name: [{ required: true, trigger: "blur" }],
region: [{ required: true, trigger: "change" }],
desc: [{ required: true, trigger: "blur" }],
};
// 表单校验
function formRulesValidate(fName) {
return new Promise((resolve) => {
proxy.$refs[fName].validate((valid) => {
if (valid) resolve(valid);
});
});
}
// 表单校验
function submitForm() {
let formRulesOneRes = formRulesValidate("ruleFormRef");
let formRulesTwoRes = formRulesValidate("ruleFormRef2");
Promise.all([formRulesOneRes, formRulesTwoRes])
.then(() => {
console.log("成功");
})
.catch(() => {
console.log("err");
});
}
// 重置表单
function resetForm() {
proxy.$refs.ruleFormRef.resetFields();
proxy.$refs.ruleFormRef2.resetFields();
}
</script>
element 多个表单校验
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 父组件 1.template中内容 2.data和methods 子组件 1.template中内容 2.data...
- 在vue+element的项目中,需要对form表单下的一个form item中校验多项数据: 1.Dom结构如下...
- 写了一段时间的vue,前端用了element-ui,经常会用到from表单,总结一下form表单的校验,以及遇到过...