elementUi - - - - table 勾选功能 & 禁止勾选
在Element UI的Table组件中,可以通过设置reserve-selection
功能来实现勾选功能,同时可以通过设置row-class-name
或者row-style
属性来控制某些行是否可以被勾选。
以下是一个简单的例子,展示了如何在Element UI的Table组件中使用勾选功能,并禁止勾选第一行:
<template>
<el-table
:data="tableData"
style="width: 100%"
ref="multipleTable"
@selection-change="handleSelectionChange"
row-key="id"
:row-class-name="disableSelection">
<el-table-column
type="selection"
width="55">
</el-table-column>
<el-table-column
prop="date"
label="日期"
width="180">
</el-table-column>
<el-table-column
prop="name"
label="姓名"
width="180">
</el-table-column>
<el-table-column
prop="address"
label="地址">
</el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [{
id: 1,
date: '2016-05-02',
name: '张三',
address: '上海市普陀区金沙江路 1518 弄'
}, {
id: 2,
date: '2016-05-04',
name: '李四',
address: '上海市普陀区金沙江路 1517 弄'
}]
}
},
methods: {
handleSelectionChange(val) {
this.multipleSelection = val;
},
disableSelection({ row, rowIndex }) {
// 禁止勾选第一行
if (rowIndex === 0) {
return 'disabled-row';
}
}
}
}
</script>
<style>
.disabled-row .el-table__row {
pointer-events: none;
cursor: default;
background-color: #f2f2f2;
}
</style>
在上述代码中,disableSelection
方法用于判断哪些行应该被禁止勾选,在这个例子中是第一行。该方法返回的字符串会被应用为行的类名。在<style>
标签中定义了.disabled-row
类,它设置了这些行的pointer-events
为none
,使得这些行不会响应鼠标事件,从而禁止了勾选行为。
评论已关闭