vue + element-ui 点击动态添加form表单项
时间: 2023-10-09 08:10:22 浏览: 239
vue+element创建动态的form表单及动态生成表格的行和列
您可以通过动态绑定数据以及使用`v-for`指令实现点击动态添加表单项。以下是一个使用Vue和Element UI的示例:
```html
<template>
<div>
<el-form :model="form" ref="dynamicForm" label-width="80px">
<el-form-item v-for="(item, index) in form.items" :key="index">
<el-input v-model="item.value" placeholder="请输入内容"></el-input>
<el-button @click="removeFormItem(index)" type="danger" icon="el-icon-delete"></el-button>
</el-form-item>
<el-button @click="addFormItem" type="primary">新增表单项</el-button>
</el-form>
</div>
</template>
<script>
export default {
data() {
return {
form: {
items: [
{ value: '' } // 默认一个表单项
]
}
};
},
methods: {
addFormItem() {
this.form.items.push({ value: '' });
},
removeFormItem(index) {
this.form.items.splice(index, 1);
}
}
};
</script>
```
在上面的示例中,通过`v-for`指令遍历`form.items`数组,动态生成表单项。点击"新增表单项"按钮时,会调用`addFormItem()`方法,在`form.items`数组中新增一个表单项对象。每个表单项对象包含一个`value`属性,用于存储输入的内容。点击删除按钮时,会调用`removeFormItem(index)`方法,通过索引从`form.items`数组中移除对应的表单项对象。
这样,每次点击"新增表单项"按钮时,都会动态添加一个新的表单项。
阅读全文