Vue+Element实现表格编辑、删除、以及新增行的最优方法


Posted in Javascript onMay 28, 2019

之前已经实现了表格的新增、编辑和删除,在我的上篇文章中写的也比较详细。但是总感觉有点不完美,首先新增了一行以后,必须要双击某一个单元格参能进行内容的输入。从代码上来说,代码量也较大;而且使用的是原生的html标签,有点尴尬。

于是,进一步研以后,进行了一定的优化,直接使用vue的代码实现,不仅大大减少了代码量,还实现了操作的友好性。下面直接上代码:

1 html部分

这次的优化其实主要在于html部分,直接将vue的el-input标签或者el-select标签放入表格的每个单元格中。这样就不用去考虑表格内容的编辑问题了。

<el-form :model="inServForm" ref="inServForm" label-width="130px" size="small">
    <el-form-item label="输入参数列表" prop="servin" >
    <el-button type="primary" @click="addRow(infiledList)">新增</el-button>
    <template>
     <el-table border :data="infiledList" style="width: 100%" >
      <el-table-column prop="fildna" label="名称" style="width:6vw;" >
      <template scope="scope">
       <el-input size="mini" v-model="scope.row.fildna" ></el-input>
      </template>
      </el-table-column>
      <el-table-column prop="fildtp" label="类型">
      <template scope="scope">
       <el-select v-model="scope.row.fildtp" clearable >
        <el-option
        v-for="item in fildtps"
        :key="item.value"
        :label="item.text"
        :value="item.value">
        </el-option>
       </el-select>
      </template>
      </el-table-column>
      <el-table-column prop="remark" label="备注">
      <template scope="scope">
         <el-input size="mini" v-model="scope.row.remark" ></el-input>
      </template>
      </el-table-column>
      <el-table-column fixed="right" label="操作">
    <template slot-scope="scope">
    <el-button @click.native.prevent="deleteRow(scope.$index, infiledList)" size="small"> 移除 </el-button>
    </template>
    </el-table-column>
   </el-table>
   </template>
  </el-form-item>
</el-form>

2 数据定义部分

data () {
 return {
infiledList:[],
 fildtps:[{text:'字符',value:'1'},{text:'数字',value:'2'}],

}

3 方法部分

methods: {
 deleteRow(index, rows) {//删除改行
    rows.splice(index, 1);
    },
  addRow(tableData,event){
  tableData.push({ fildna: '',fildtp:'',remark:''
  })
  },
}

4 效果图展示

Vue+Element实现表格编辑、删除、以及新增行的最优方法

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript 常用代码技巧大收集
Feb 25 Javascript
网站页面自动跳转实现方法PHP、JSP(下)
Aug 01 Javascript
JavaScript(JS) 压缩 / 混淆 / 格式化 批处理工具
Dec 10 Javascript
javascript基础知识大全 便于大家学习,也便于我自己查看
Aug 17 Javascript
getComputedStyle与currentStyle获取样式(style/class)
Mar 19 Javascript
使用javascript实现监控视频播放并打印日志
Jan 05 Javascript
微信小程序之页面跳转和参数传递的实现
Sep 29 Javascript
ztree实现左边动态生成树右边为内容详情功能
Nov 03 Javascript
Vue自定义toast组件的实例代码
Aug 15 Javascript
layui表格内容溢出的解决方法
Sep 06 Javascript
微信小程序批量监听输入框对按钮样式进行控制的实现代码
Oct 12 Javascript
element tree树形组件回显数据问题解决
Aug 14 Javascript
Javascript三种字符串连接方式及性能比较
May 28 #Javascript
vue+element实现表格新增、编辑、删除功能
May 28 #Javascript
Vue实现表格批量审核功能实例代码
May 28 #Javascript
vue+Element实现搜索关键字高亮功能
May 28 #Javascript
vue input输入框关键字筛选检索列表数据展示
Oct 26 #Javascript
vue+elementUI实现表格关键字筛选高亮
Oct 26 #Javascript
Django+Vue实现WebSocket连接的示例代码
May 28 #Javascript
You might like
PHP大小写问题:函数名和类名不区分,变量名区分
2013/06/17 PHP
PHP通过API获取手机号码归属地
2015/05/28 PHP
php resizeimage 部分jpg文件 生成缩略图失败的原因分析及解决办法
2016/03/23 PHP
php修改数组键名的方法示例
2017/04/15 PHP
php计数排序算法的实现代码(附四个实例代码)
2020/03/31 PHP
JavaScript表单常用验证集合
2008/01/16 Javascript
JQuery 弹出框定位实现方法
2010/12/02 Javascript
jquery获得下拉框值的代码
2011/08/13 Javascript
jQuery动态添加删除select项(实现代码)
2013/09/03 Javascript
Jquery焦点图实例代码
2014/11/25 Javascript
js获取url传值的方法
2015/12/18 Javascript
JavaScript知识点总结(四)之逻辑OR运算符详解
2016/05/31 Javascript
聊一聊Vue.js过渡效果
2016/09/07 Javascript
js利用appendChild对标签进行排序的实现方法
2016/10/16 Javascript
JS/jQuery判断DOM节点是否存在的简单方法
2016/11/24 Javascript
微信开发 JS-SDK 6.0.2 经常遇到问题总结
2016/12/08 Javascript
微信小程序 利用css实现遮罩效果实例详解
2017/01/21 Javascript
微信小程使用swiper组件实现图片轮播切换显示功能【附源码下载】
2017/12/12 Javascript
jquery实现搜索框功能实例详解
2018/07/23 jQuery
three.js实现圆柱体
2018/12/30 Javascript
详解javascript 变量提升(Hoisting)
2019/03/12 Javascript
js根据后缀判断文件文件类型的代码
2020/05/09 Javascript
vue 子组件和父组件传值的示例
2020/09/11 Javascript
解决ant design vue 表格a-table二次封装,slots渲染的问题
2020/10/28 Javascript
Python实现把xml或xsl转换为html格式
2015/04/08 Python
Python cookbook(数据结构与算法)从任意长度的可迭代对象中分解元素操作示例
2018/02/13 Python
Python中Numpy包的安装与使用方法简明教程
2018/07/03 Python
python2和python3的输入和输出区别介绍
2018/11/20 Python
关于python多重赋值的小问题
2019/04/17 Python
python opencv实现图像边缘检测
2019/04/29 Python
python 初始化一个定长的数组实例
2019/12/02 Python
python实现输入的数据在地图上生成热力图效果
2019/12/06 Python
全球知名鞋履品牌授权零售商:Journeys
2016/09/17 全球购物
理工科学生的自我评价
2013/12/15 职场文书
感谢信格式范文
2015/01/22 职场文书
2015年幼儿园卫生保健工作总结
2015/05/12 职场文书