element表格+表单+表单验证结合运用
<template>
<el-form :model="form" :rules="rules" ref="form" label-width="120px">
<el-table :data="form.items" border style="width: 100%">
<el-table-column prop="date" label="日期" width="180">
<template slot-scope="scope">
<el-form-item :prop="'items.' + scope.$index + '.date'" :rules="rules.date">
<el-date-picker v-model="scope.row.date" type="date" placeholder="选择日期"></el-date-picker>
</el-form-item>
</template>
</el-table-column>
<el-table-column prop="name" label="姓名" width="180">
<template slot-scope="scope">
<el-form-item :prop="'items.' + scope.$index + '.name'" :rules="rules.name">
<el-input v-model="scope.row.name"></el-input>
</el-form-item>
</template>
</el-table-column>
<!-- 其他列 -->
</el-table>
<el-form-item>
<el-button type="primary" @click="submitForm('form')">提交</el-button>
</el-form-item>
</el-form>
</template>
<script>
export default {
data() {
return {
form: {
items: [
{ date: '', name: '' }
// 其他行数据
]
},
rules: {
date: [
{ required: true, message: '请输入日期', trigger: 'blur' }
],
name: [
{ required: true, message: '请输入姓名', trigger: 'blur' }
]
}
};
},
methods: {
submitForm(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
alert('提交成功!');
} else {
console.log('表单验证失败!');
return false;
}
});
}
}
};
</script>
这个代码示例展示了如何在Vue.js中使用Element UI库创建一个带有表单验证的表格。表单中的每一行都有日期和姓名字段,这些字段都有其对应的验证规则。当提交表单时,会触发表单验证,如果验证通过,则提交表单;如果失败,则不允许提交。这是一个典型的在实际开发中结合表格和表单验证使用的场景。
评论已关闭