elementui循环复选框,并校验
时间: 2023-08-28 08:04:35 浏览: 92
假设你有一个包含多个复选框的表单,你可以使用 Element UI 的 el-checkbox 组件来实现。要对这些复选框进行校验,可以使用 Element UI 的表单验证功能。
以下是一个示例,展示如何循环渲染复选框并对它们进行校验:
```
<template>
<el-form :model="form" :rules="rules" ref="form" label-width="100px">
<el-form-item label="选择语言">
<el-checkbox-group v-model="form.languages">
<el-checkbox v-for="language in languages" :key="language.value" :label="language.value">{{ language.label }}</el-checkbox>
</el-checkbox-group>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="submitForm">提交</el-button>
</el-form-item>
</el-form>
</template>
<script>
export default {
data() {
return {
form: {
languages: []
},
languages: [
{ label: 'Java', value: 'java' },
{ label: 'Python', value: 'python' },
{ label: 'JavaScript', value: 'javascript' },
{ label: 'C++', value: 'c++' }
],
rules: {
languages: [
{ required: true, message: '请至少选择一种语言', type: 'array', min: 1 }
]
}
}
},
methods: {
submitForm() {
this.$refs.form.validate((valid) => {
if (valid) {
// 表单校验通过,可以提交表单数据
console.log(this.form.languages)
} else {
// 表单校验不通过,需要处理错误信息
console.log('校验不通过')
}
})
}
}
}
</script>
```
在这个示例中,我们使用了 el-checkbox-group 组件来绑定表单数据中的 languages 字段,使用 v-for 指令循环渲染复选框。在表单验证规则中,我们使用了 required 规则来保证至少选择一种语言,并设置了错误提示信息。在提交表单时,我们调用了表单的 validate 方法进行校验,如果校验通过,就可以提交表单数据。
阅读全文