美文网首页
element-ui 实现el-table 多选框默认选中

element-ui 实现el-table 多选框默认选中

作者: collincp | 来源:发表于2022-08-12 23:47 被阅读0次

记录时间: 2022-08-12
先上代码实现

<template>
  <div class="test">
    <!--  <el-popover placement="bottom" width="400" trigger="click"> -->
    <el-table ref="multipleTable" :data="tableData" @selection-change="handleSelectionChange">
      <el-table-column align="center" type="selection" width="42" />
      <el-table-column width="150" property="date" label="日期"></el-table-column>
      <el-table-column width="100" property="name" label="姓名"></el-table-column>
      <el-table-column width="300" property="address" label="地址"></el-table-column>
    </el-table>
    <!-- <el-button slot="reference" > 激活</el-button> -->
    <!--  </el-popover> -->
  </div>
</template>
<script>
export default {
  data() {
    return {
      tableData: [
        {
          id: 1,
          date: '2016-05-03',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }, {
          id: 2,
          date: '2016-05-02',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }, {
          id: 3,
          date: '2016-05-04',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }, {
          id: 4,
          date: '2016-05-01',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }, {
          id: 5,
          date: '2016-05-08',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }, {
          id: 6,
          date: '2016-05-06',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }, {
          id: 7,
          date: '2016-05-07',
          name: '王小虎',
          address: '上海市普陀区金沙江路 1518 弄'
        }
      ],
      multipleSelection: [],
      ms: {
        id: 7,
        date: '2016-05-07',
        name: '王小虎',
        address: '上海市普陀区金沙江路 1518 弄'
      }
    }
  },
  mounted() {
// 巨坑的地方,multipleTable存放的是  this.tableData 数据,必须使用 this.tableData进行遍历才行
    this.tableData.forEach(element => {
      if (element.id == 7) { this.$refs.multipleTable.toggleRowSelection(element, true); }
    });
// 当需要刷新dom的时候使用该方法,比如请求前dom已经加载,如有load状态的情况下,需要使用该形式刷新,否则无效
    this.$nextTick(function () {
      this.machineResultList.forEach(element => {
        if (element.id == 7) { this.$refs.multipleTable.toggleRowSelection(element, true); }
      });
    });
  methods: {
    handleSelectionChange(val) {
      this.multipleSelection = val;
    }
  }

}
</script>
  • 从官网抄的实例,最开始本想multipleTable存放id。一直没能实现,最后退而求其次,存放完整数据,结果发现始终无法默认显示,使用新建arrlist,或者直接存放对象,均以失败告终,最后发现必须是 tableData中的数据,推测可能遍历的是tableData,故只有tableData中的数据才能被multipleSelection 认可。
  • 刷新选择状态,其中需要注意在有load状态下,dom已经加载完成,需要使用 this.$nextTick 进行重新刷新状态

相关文章

  • element-ui 实现el-table 多选框默认选中

    记录时间: 2022-08-12先上代码实现 从官网抄的实例,最开始本想multipleTable存放id。一直没...

  • el-table 选中行与复选框相互联动

    需求:对el-table 选中行时复选框也被选中,选中复选框时触发行的相应变化 (拢共分两步)步骤:第一步:点击...

  • vue elementUI实现el-table 复选框默认选中,

    1、默认禁用效果禁用用selectable控制 table的list数据需要有个字段标识是否禁用 例如canC...

  • vue的el-table通过表头勾选实现列自定义

    近期要实现一个el-table的表头自定义功能,可以根据复选框的选中或者不选实现表格列的显示隐藏,自定义展示表格列...

  • el-cascader属性重定义

    element-ui的层级选框 cascader 官方默认属性是value ,label , children,但...

  • 固定列和表格头的表格实现

    前言 脱离element-ui又借鉴element-ui,实现类似el-table的固定列和表头的效果 1-1固定...

  • el-table实现radio单选

    el-table本事是有单选事件的,其事件是row-click,但是这个选中效果是没有radio单选框视觉上的显示...

  • 2018-03-30

    最近在做项目时,遇到一个这样的需求,就是在多级菜单中,选中二级的复选框,默认将它下面的三级复选框全部选中,若选中一...

  • js获取单选框的值

    单选框实现取值及选中触发事件实现效果:过敏史选中有时显示文本框,无时隐藏 html js:

  • 踩坑

    element-UI 单个复选框check-box选中的值一定要是布尔值,不能是数字1或者0 CSS:scoped...

网友评论

      本文标题:element-ui 实现el-table 多选框默认选中

      本文链接:https://www.haomeiwen.com/subject/cfnfgrtx.html