当前位置:首页 > VUE

vue中表格实现单选

2026-02-23 04:10:56VUE

实现表格单选的基本思路

在Vue中实现表格单选功能,可以通过数据绑定和事件监听完成。核心是维护一个选中项的数据状态,并通过点击事件更新该状态。

使用v-model绑定选中项

在数据中定义selectedItem变量存储当前选中项,通过v-model:class绑定高亮样式:

data() {
  return {
    tableData: [...], // 表格数据
    selectedItem: null // 当前选中项
  }
}
<tr v-for="item in tableData" 
    :class="{ 'active': selectedItem === item }"
    @click="selectedItem = item">
  <td>{{ item.name }}</td>
  ...
</tr>

通过计算属性控制单选

使用计算属性确保始终只有一项被选中:

computed: {
  selectedItem: {
    get() { return this._selectedItem },
    set(newVal) {
      this._selectedItem = newVal === this._selectedItem ? null : newVal
    }
  }
}

使用第三方组件库

若使用Element UI等组件库,可直接利用内置单选功能:

<el-table
  :data="tableData"
  @current-change="handleCurrentChange"
  highlight-current-row>
  <el-table-column prop="name" label="姓名"></el-table-column>
  ...
</el-table>
methods: {
  handleCurrentChange(val) {
    this.currentRow = val
  }
}

样式优化建议

为选中行添加视觉反馈:

vue中表格实现单选

tr.active {
  background-color: #f5f7fa;
}
tr:hover {
  cursor: pointer;
}

注意事项

  • 清除选中状态可通过this.selectedItem = null实现
  • 若表格数据动态更新,需同步重置选中状态
  • 移动端建议增加点击区域的响应范围

标签: 单选表格
分享给朋友:

相关文章

css 制作表格

css 制作表格

基础表格结构 使用HTML的<table>标签创建表格框架,搭配<tr>(行)、<th>(表头)和<td>(单元格)标签。例如: <table&…

vue实现简单表格

vue实现简单表格

Vue 实现简单表格的方法 使用原生 HTML 表格 在 Vue 模板中可以直接使用 HTML 原生表格标签,通过 v-for 动态渲染数据: <template> <tabl…

css表格制作表格

css表格制作表格

CSS 表格制作方法 基础表格结构 使用HTML的<table>标签创建表格框架,搭配<tr>(行)、<td>(单元格)和<th>(表头)标签: &l…

vue实现图片单选

vue实现图片单选

Vue 实现图片单选功能 在 Vue 中实现图片单选功能可以通过多种方式完成,以下是两种常见的实现方法: 方法一:使用 v-model 和单选按钮 通过将单选按钮与图片绑定,利用 v-model 管…

vue实现导出表格

vue实现导出表格

Vue 实现导出表格的方法 使用 xlsx 库导出 Excel 安装 xlsx 库 npm install xlsx 在 Vue 组件中引入 xlsx import * as XLSX from…

vue 实现跨行表格

vue 实现跨行表格

实现跨行表格的方法 在Vue中实现跨行表格可以通过多种方式完成,以下是几种常见的方法: 使用HTML原生表格 HTML原生表格支持rowspan属性,可以直接在Vue模板中使用: <tabl…