iview table选中项显示在上方tag标签并可以取消

该文描述了如何在Vue.js应用中创建一个表格,实现多选功能,选中的项会显示在table上方的tag标签中,并支持跨页显示。当点击tag的关闭图标时,会触发handleClose事件,调用on-select-cancel方法。同时,文章提到了unselectRow函数,用于处理点击表格多选框时的分页逻辑。
摘要由CSDN通过智能技术生成

如图表格多选功能选中项显示在table的上方并且支持跨页,table上方加tag标签

<span
      class="select_tips"
    >
      <Tag
        v-for="item in selection"
        :key="item.id"
        :name="item.id"
        closable
        @on-close="handleClose"
      >
        {{ formatTag(item) }}
      </Tag>
    </span>
    <Table/>

 table内容就不过多展示,handleClose是tag的叉号icon,点击之后会内部回调一下table的on-select-cancel方法所以需要处理一下

handleClose (event, name) {
      let index = -1
      this.selection.forEach((el, idx) => {
        if (name === el.id) {
          index = idx
        }
      })
      this.selection.splice(index, 1) // 存储被删除的元素数组
      let dataIndex = -1
      this.tableData.forEach((el, idx) => {
        if (name === el.id) {
          dataIndex = idx
        }
      })
      if (dataIndex !== -1) {
        this.tableDataFlag = true
        this.$refs.table.toggleSelect(dataIndex)
      }
    },
unselectRow (selection, row) {
      if (this.tableDataFlag) {
//这里是如果点击tag叉号icon就不执行
        this.tableDataFlag = false
        return true
      } else {
        //这里是点击table多选框控制分页实现逻辑
      }
    },

以上能实现如图功能,欢迎指正

iView 中,要清除表格(Table)中的选中,可以通过以下步骤进行操作: 1. 首先,你需要在表格的数据源中添加一个 `selected` 属性来表示是否被选中。例如,如果你的数据源是一个数组,可以为每个数组添加一个 `selected` 属性,默认值为 `false`。 2. 在表格的模板中,使用 `row-selection` 属性来启用行选择功能,并将 `selected` 属性绑定到数据源中的 `selected` 属性。例如: ``` <Table :data="tableData" :row-selection="{ selected: tableData.filter(item => item.selected), onChange: handleSelectionChange }"> <Table-column type="selection" width="60"></Table-column> <Table-column prop="name" label="Name"></Table-column> <Table-column prop="age" label="Age"></Table-column> </Table> ``` 3. 在你的方法中,实现 `handleSelectionChange` 方法来处理选中的变化。例如,你可以将选中的行存储到一个变量中,并在需要清除选中的时候将该变量清空。例如: ``` data() { return { tableData: [ { name: 'John', age: 20, selected: false }, { name: 'Jane', age: 25, selected: false }, { name: 'Tom', age: 30, selected: false } ], selectedRows: [] }; }, methods: { handleSelectionChange(selection) { this.selectedRows = selection; }, clearSelection() { this.selectedRows = []; } } ``` 4. 最后,当你想要清除选中时,调用 `clearSelection` 方法即可。例如,可以在某个按钮的点击事件中调用该方法。 ``` <Button @click="clearSelection">Clear Selection</Button> ``` 通过以上步骤,你可以在 iView 中清除表格的选中。希望对你有帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值