0


el-table 多选框改成单选框(el-table单选功能)

今天,写项目时,有一个table作为筛选的载体,需要选中table里面的一条数据,我想了一下,用table里面的selection功能,实现单选功能。

<template>
  <div>
    <el-table
      ref="multipleTable"
      :data="tableData"
      highlight-current-row
      @select-all="onSelectAll"
      @selection-change="selectItem"
      @row-click="onSelectOp"
    >
      <el-table-column type="selection" width="55" align="center" />
      <el-table-column label="序号" type="index" align="center" />
      <el-table-column label="姓名" prop="name" align="center" />
      <el-table-column label="手机号码" prop="province" align="center" />
    </el-table>
  </div>
</template>
 
<script>
export default {
  data() {
    return {
      tableData: [{
          name: '王小虎1',
          province: '上海1',
        }, {
          name: '王小虎2',
          province: '上海2',
        }, {
          name: '王小虎3',
          province: '上海3',
        }, {
          name: '王小虎4',
          province: '上海4',
        }],
    }
  },
  mounted(){
  },
  methods: {
    onSelectAll() {
      this.$refs.multipleTable.clearSelection();
    },
    selectItem(rows) {
      if (rows.length > 1) {
        const newRows = rows.filter((it, index) => {
          if (index == rows.length - 1) {
            this.$refs.multipleTable.toggleRowSelection(it, true);
            return true;
          } else {
            this.$refs.multipleTable.toggleRowSelection(it, false);
            return false;
          }
        });
        this.multipleSelection = newRows;
      } else {
        this.multipleSelection = rows;
      }
      // this.userId = this.multipleSelection.length? this.multipleSelection[0].guid: "";
      console.log('2',this.multipleSelection)
    },
    onSelectOp(row) {
      this.$refs.multipleTable.clearSelection();
      this.$refs.multipleTable.toggleRowSelection(row, true);
      this.multipleSelection = [];
      this.multipleSelection.push(row);
    },
  }
};
</script>

本文转载自: https://blog.csdn.net/qq_28586135/article/details/128417409
版权归原作者 Baifu paste 所有, 如有侵权,请联系我们删除。

“el-table 多选框改成单选框(el-table单选功能)”的评论:

还没有评论