VUE elementUI动态table新增行,编辑和初始化
程序员文章站
2022-06-17 15:19:50
VUE elementUI动态table新增行,编辑和初始化新增行函数调用,如包含下拉框、上传图片等需先进行初始化,unshfit把新增的一行插入到嘴上边,方便用户体验
VUE elementUI动态table新增行,编辑和初始化
新增行函数调用,如包含下拉框、上传图片等需先进行初始化,unshfit把新增的一行插入到嘴上边,方便用户体验
<button type="button" class="ass_delete" @click.prevent="delData()">删除商品</button>
<button type="button" class="ass_add" @click.prevent="addRow()">增加商品</button>
// 增加行
addRow: function() {
var list = {
rowNum: this.tableData.length + 1,
CHEM_NAME_ZG: this.CHEM_NAME_ZG,
CL_TYPE_ID: '',
name: this.$data.options,
SPEC_ID: this.SPEC_ID,
PACKAGE_TYPE: this.PACKAGE_TYPE,
NUM: this.NUM,
TAX_PRICE: this.TAX_PRICE,
RATE_CN_ID: '',
rate: this.$data.rateArr,
PRICE: this.PRICE,
ALL_PRICE: this.ALL_PRICE,
USE_REMARK: this.USE_REMARK
};
this.tableData.unshift(list);
},
// 删除选中行
delData: function() {
var vm = this;
if (this.selectlistRow.length > 0) {
for (var i = 0; i < this.selectlistRow.length; i++) {
var val = this.selectlistRow;
// 获取选中行的索引的方法
// 遍历表格中tableData数据和选中的val数据,比较它们的rowNum,相等则输出选中行的索引
// rowNum的作用主要是为了让每一行有一个唯一的数据
val.forEach(function(val, index) {
vm.tableData.forEach(function(v, i) {
if (val.rowNum === v.rowNum) {
// i 为选中的索引
vm.tableData.splice(i, 1)
}
})
})
}
// 删除完数据之后清除勾选框
this.$refs.tableData.clearSelection()
} else {
vm.$alert('', '请至少选择一条数据进行删除', {
confirmButtonText: '确定',
type: 'error',
center: true
});
return;
}
},
本文地址:https://blog.csdn.net/zyp19930222/article/details/111030974