el-table点击某一行选中改变背景色且执行方法

文章介绍了如何在ElementUI的表格组件中实现点击某一行时选中并改变背景色,通过`row-style`属性和`@row-click`事件处理器,以及`selectRow`方法来定制行的样式和行为。
摘要由CSDN通过智能技术生成

elementUI table表格点击某一行选中并且改变背景色

使用:row-style="rowStyle"及@row-click=“selectRow”:
其中 selectRow 方法中:
row 输出:当前行的内容
在这里插入图片描述
column 输出:当前列的信息在这里插入图片描述
event 输出:当前事件在这里插入图片描述

<el-table
  style="width: 100%; border: 1px dashed rgba(128,128,128,0.57); border-top: 0px"
  height="520px"
  ref="table"
  :data="typeList"
  :row-style="rowStyle"
  @row-click="selectRow">
</el-table>
const selectRow = (row, column, event) => {
  name.value = row.name;  
  getContent(row.name)  // 每次点击了该行(该行任意位置、任意列)都进行执行该方法
}
// 点击后的效果(点击某一行选中并且改变背景色)
const rowStyle = ({row}) => {
  if (name.value === row.name) {
   return {
       'background-color': 'rgb(235,240,240)', cursor: 'pointer'
     }  
   }
   return {cursor: 'pointer'}
}
  • 11
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现点击el-table中的某一行改变该行的颜色,你可以使用Vue的事件处理和样式绑定。 首先,你需要为el-table的每一行添加一个点击事件处理方法。在该方法中,你可以改变该行的颜色。可以在每一行的template中添加@click事件监听器,例如: ```html <el-table v-for="item in tableData" :key="item.id" :data="tableData"> <el-table-column prop="name" label="Name"></el-table-column> <el-table-column prop="age" label="Age"></el-table-column> <!-- 其他列 --> <el-table-column label="操作"> <template slot-scope="scope"> <el-button @click="changeRowColor(scope.row)">改变颜色</el-button> </template> </el-table-column> </el-table> ``` 然后,在Vue实例中定义changeRowColor方法改变行的颜色。你可以使用一个data属性来记录当前选中的行的索引或其他标识符,然后在样式绑定中根据该属性来设置行的颜色。例如: ```javascript data() { return { tableData: [...], // 表格数据 selectedRowIndex: -1 // 记录选中的行索引,默认为-1 }; }, methods: { changeRowColor(row) { this.selectedRowIndex = row.$index; // 记录选中的行索引 } } ``` 最后,在el-table的行模板中使用样式绑定来根据选中的行索引来设置行的颜色。例如: ```html <el-table-row :style="{'background-color': selectedRowIndex === $index ? 'red' : ''}" > <!-- 行内容 --> </el-table-row> ``` 这样,当你点击"改变颜色"按钮时,对应行的背景色将会变为红色。你可以根据需要自行调整样式和更新逻辑。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值