1.首先大家现在查阅所有资料都可能无法找到关于highlight-current-row单选表格中的问题,这也是我在开发并且秃头的过程中踩过的好多坑,拿出来给大家分享分享。
 
首先并不是radio单选表格,而是这种带色块的单选表格
 
2.也就是配置highlight-current-row属性即可实现单选。之后由current-change事件来管理选中时触发的事件,它会传入currentRow,oldCurrentRow。如果需要显示索引,可以增加一列el-table-column,设置type属性为index即可显示从 1 开始的索引号。
 
3.可是现在碰到的问题是如果某一条不满足条件是不可选中的,但是我查阅了所有资料却无法解决,最后想到了利用css可以解决。首先给el-table添加 :cell-style=“cellStyle”,这个方法用来控制table的样式。
 
 <el
-table
          
:data
="InvestAdvisorList"
          @row
-click
="handle"
          ref
="multipleTable"
          :header
-cell
-style
="{background:'#DAEDFF'}"
          :row
-class-name
="tableRowClassName"
          highlight
-current
-row
          
:cell
-style
="cellStyle"
        >
 
4.这个方法呢会每次进入页面自动执行,参数就是data数据,然后这个方法会循环数据,此时就可以判断如果某一项不符合需求就可以return出css属性,此时我们使用pointer-events:none属性,就是让鼠标原有的事件不能实现,这样表格也就无法高亮,数据某一行也无法选中,就可以达到我们禁用的效果。
 
 cellStyle(data
){
        if(data
.row
.OPER_FLAG!=="A") {
          return "pointer-events:none"
        }
    },
 
5.利用:header-cell-style属性可以更改表头的背景颜色,详情请见element-ui官方
 
 
 <el
-table
          
:data
="InvestAdvisorList"
          @row
-click
="handle"
          ref
="multipleTable"
          :header
-cell
-style
="{background:'#DAEDFF'}"
          :row
-class-name
="tableRowClassName"
          highlight
-current
-row
          
:cell
-style
="cellStyle"
        >
 
6.另外大家如果想实现单选框默认选中以及选中不可取消状态,可参考我的其他文章,element-ui表格中的复选框默认选中状态、禁用状态以及默认选中不可取消状态
                
                
                
        
    
转载请注明原文地址:https://tech.qufami.com/read-12587.html