如何處理elementUI中表格多選框禁用的問題
處理elementUI中表格多選框禁用
在 el-table-column type 類型為 selection 組件中,添加 :selectable='方法名'
<el-table :data="tableData" v-loading="loading" max-height="570" stripe :header-cell-style="headerStyle" @selection-change="handleSelectionLeftChange"> ? ?<el-table-column type="selection" width="50" :selectable='selectEnable'> ? ?</el-table-column> ? ?<el-table-column prop="appName" label="選擇產(chǎn)品" align="center" width="350"> ? ?</el-table-column> </el-table>
方法函數(shù)
selectEnable(row, rowIndex) { ? ? ? if (this.enabelIds.some(item => item === row.id)) { ? ? ? ? return false ? ? ? } else { ? ? ? ? return true// 不禁用 ? ? ? } ? ? }
elementUI多選表格禁用某一行不被選擇
首先使用element-ui 的表格組件
具體代碼如下
? ? <el-table :data="tableData"> ? ? ?? ?<el-table-column? ? ? ?? ??? ?type="selection"? ? ? ?? ??? ?:selectable="selectHandle"? ? ? ?? ??? ?label="多選"? ? ? ?? ??? ?align="center">?? ??? ??? ??? ? ??? ??? ? ? ? ?? ?</el-table-column> ? ? </el-table>
其中tableData為綁定的表格數(shù)據(jù),將表格第一列的type設(shè)置為selection,代表多選。
selectable綁定的selectHandle()方法僅對 type=selection 的列有效,類型為 Function,F(xiàn)unction 的返回值用來決定這一行的 CheckBox 是否可以勾選,接下來只需要在selectHandle()方法中設(shè)置返回值就可以了
如下:
?? ?//在參數(shù)row中可以獲得這一行的數(shù)據(jù),index為這一行的下標(biāo), ?? ?//我的需求是禁用第一行,所以在index === 0 的時候,返回false即可 ? ? selectHandle(row, index) { ? ? ? return !(index === 0); ? ? },
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue+element+Java實現(xiàn)批量刪除功能
這篇文章主要介紹了vue+element+Java實現(xiàn)批量刪除功能,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-04詳解在vue-cli中使用graphql即vue-apollo的用法
這篇文章主要介紹了詳解在vue-cli中使用graphql即vue-apollo的用法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-09-09vue項目設(shè)置活性字體過程(自適應(yīng)字體大小)
這篇文章主要介紹了vue項目設(shè)置活性字體過程(自適應(yīng)字體大小),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-09-09Vue3中級指南之如何在vite中使用svg圖標(biāo)詳解
在以webpack為構(gòu)建工具的開發(fā)環(huán)境中我們可以很方便的實現(xiàn)SVG圖標(biāo)的組件化,下面這篇文章主要給大家介紹了關(guān)于Vue3中級指南之如何在vite中使用svg圖標(biāo)的相關(guān)資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-04-04