当前位置:   article > 正文

element table组件实现可编辑的方法

element table组件实现可编辑的方法

我们在实际开发的过程中会遇到需要展示表格的需求,但表格不光需要回显,有时会需要向后台发送数据,怎么实现table组件可编辑,答案就是插槽。

 实现一个简单的,在其中加入下拉选择框,加入输入框,实现用户可以自填表格,这边用的是element组件

代码如下:

HTML

  1. <el-table
  2. :data="item.tableData1"
  3. border
  4. :header-cell-style="{
  5. background: '#f8fbff',
  6. color: '#173686',
  7. border: '0',
  8. }"
  9. style="width: 100%"
  10. >
  11. <el-table-column
  12. label="名称"
  13. align="center"
  14. width="350"
  15. >
  16. <template slot-scope="scope">
  17. <div class="noBor">
  18. <el-input
  19. v-model="scope.row.paramName"
  20. placeholder="请输入"
  21. ></el-input>
  22. </div>
  23. </template>
  24. </el-table-column>
  25. <el-table-column
  26. label="是否必填"
  27. align="center"
  28. prop="mast"
  29. width="225"
  30. >
  31. <template slot-scope="scope">
  32. <el-select
  33. v-model="scope.row.mast"
  34. placeholder="请选择"
  35. >
  36. <el-option label="是" value="0"></el-option>
  37. <el-option label="否" value="1"></el-option>
  38. </el-select>
  39. </template>
  40. </el-table-column>
  41. <el-table-column
  42. label="说明"
  43. align="center"
  44. width="350"
  45. >
  46. <template slot-scope="scope">
  47. <div class="noBor">
  48. <el-input
  49. v-model="scope.row.state"
  50. placeholder="请输入"
  51. ></el-input>
  52. </div>
  53. </template>
  54. </el-table-column>
  55. <el-table-column
  56. label="类型"
  57. align="center"
  58. width="225"
  59. >
  60. <template slot-scope="scope">
  61. <div class="noBor">
  62. <el-input
  63. v-model="scope.row.type"
  64. placeholder="请输入"
  65. ></el-input>
  66. </div>
  67. </template>
  68. </el-table-column>
  69. <el-table-column
  70. label="备注"
  71. align="center"
  72. width="350"
  73. >
  74. <template slot-scope="scope">
  75. <div class="noBor">
  76. <el-input
  77. v-model="scope.row.remark"
  78. placeholder="请输入"
  79. ></el-input>
  80. </div>
  81. </template>
  82. </el-table-column>
  83. </el-table>

header-cell-style是单独定义表格表头样式的方法

数据不要忘了定义:

  1. tableData1: [
  2. {
  3. paramName: "",
  4. mast: "",
  5. state: "",
  6. type: "",
  7. remark: "",
  8. },
  9. ],

其中input加了div是为了去掉边框,代码如下:

  1. .noBor {
  2. /deep/.el-input__inner {
  3. border: none;
  4. }
  5. }

当然,表格内如果是固定同一的样式,比如都需要他可输入,可以都放入input输入框,定义动态的表头,直接循环就可以

目前还没有发现如果使用动态表头,循环出来的怎么给每一项单独设置,(之前使用iview可以)

希望大佬们多多指正

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/201226
推荐阅读
相关标签
  

闽ICP备14008679号