国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

element-ui el-table表格勾選框條件禁用,及全勾選按鈕禁用, 記錄

這篇具有很好參考價(jià)值的文章主要介紹了element-ui el-table表格勾選框條件禁用,及全勾選按鈕禁用, 記錄。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

項(xiàng)目場(chǎng)景:

表格的部分內(nèi)容是可以被勾選的,部分內(nèi)容是不可以被勾選的
使用的是 “element-plus”: “^2.2.22”, 以上應(yīng)該都是兼容的


問(wèn)題描述

要求el-table表格中,部分內(nèi)容不可以被勾選,全選框在沒(méi)有可選內(nèi)容時(shí),是禁用狀態(tài)

element-push table 選擇框禁用,ui,vue.js,elementui,前端

如上圖所示,要求數(shù)據(jù)id是1或者2的數(shù)據(jù)不可被選擇,當(dāng)數(shù)據(jù)只剩下id為1和2的數(shù)據(jù)時(shí),全選為禁用狀態(tài),當(dāng)某一個(gè)全局值為true時(shí),所有勾選框全部都是禁用狀態(tài)

分析:

從描述來(lái)看,需求有以下幾點(diǎn)
1、要求數(shù)據(jù)id是1或者2的數(shù)據(jù)不可被選擇
2、當(dāng)數(shù)據(jù)只剩下id為1和2的數(shù)據(jù)或者時(shí),全選為禁用狀態(tài)
3、當(dāng)某一個(gè)全局值為true時(shí),所有勾選框全部都是禁用狀態(tài)

解決方案:

滿足第一個(gè)條件:要求數(shù)據(jù)id是1或者2的數(shù)據(jù)不可被選擇

<template>
	 <el-table :data="tableDatas" >
	       <el-table-column type="selection" fixed="left" :selectable="checkSelectable"/>
	       <el-table-column label='姓名' prop="name" />
	 </el-table>
</template>
<script setup>
const tableDatas = ref([
{ id:1, name:"張三"},
{ id:2, name:"李四"}])
const checkSelectable = (row) => {
    if (row.id == 1 || row.id == 2) {
        return false
    } else {
        return true
    }
}
</script>

滿足第二個(gè)條件:當(dāng)數(shù)據(jù)只剩下id為1和2的數(shù)據(jù)或者時(shí),全選為禁用狀態(tài)
因?yàn)?和2不可被選擇,所以他們只能剩下兩條數(shù)據(jù),由于全選框不能直接disable,所以需要給他加上樣式

<template>
	 <el-table :data="tableDatas" :header-cell-class-name="cellClass">
	       <el-table-column type="selection" fixed="left" :selectable="checkSelectable"/>
	       <el-table-column label='姓名' prop="name" />
	 </el-table>
</template>
<script setup>
const tableDatas = ref([
{ id:1, name:"張三"},
{ id:2, name:"李四"}])
const checkSelectable = (row) => {
    if (row.id == 1 || row.id == 2) {
        return false
    } else {
        return true
    }
}

const cellClass = (row) => {
    const list = tableDatas.value.filter((rowss) => {
        return (rowss.idx == 1 || rowss.idx == 16)
    })

    if (row.columnIndex === 0) {
        if (list.length == tableData.length) {
            return "DisableSelection"
        }
    }

}
</script>
<style scoped lang="less">
::v-deep {  //全選框用了fixed 用這個(gè)樣式,沒(méi)有用fixed就用下面那個(gè)樣式
    .DisableSelection .cell .el-checkbox .el-checkbox__inner {
        background-color: var(--el-checkbox-disabled-input-fill) !important;
        border-color: var(--el-checkbox-disabled-border-color) !important;
        cursor: not-allowed !important;
    }
}

::v-deep .el-table .DisableSelection .cell .el-checkbox__inner{
    background-color: var(--el-checkbox-disabled-input-fill);
    border-color: var(--el-checkbox-disabled-border-color);
    cursor: not-allowed;
}

</style>

再滿足第三個(gè)條件

<template>
	 <el-table :data="tableDatas" :header-cell-class-name="cellClass">
	       <el-table-column type="selection" fixed="left"  :selectable="checkSelectable"/>
	       <el-table-column label='姓名' prop="name" />
	 </el-table>
</template>
<script setup>
let ablestatus = true
const tableDatas = ref([
{ id:1, name:"張三"},
{ id:2, name:"李四"}])
const checkSelectable = (row) => {
    if (row.id == 1 || row.id == 2 || ablestatus) {
        return false
    } else {
        return true
    }
}

const cellClass = (row) => {
    const list = tableDatas.value.filter((rowss) => {
        return (rowss.idx == 1 || rowss.idx == 16)
    })

    if (row.columnIndex === 0) {
        if (list.length == tableData.length || ablestatus ) {
            return "DisableSelection"
        }
    }

}
</script>
<style scoped lang="less">
::v-deep {  //全選框用了fixed 用這個(gè)樣式,沒(méi)有用fixed就用下面那個(gè)樣式
    .DisableSelection .cell .el-checkbox .el-checkbox__inner {
        background-color: var(--el-checkbox-disabled-input-fill) !important;
        border-color: var(--el-checkbox-disabled-border-color) !important;
        cursor: not-allowed !important;
    }
}

::v-deep .el-table .DisableSelection .cell .el-checkbox__inner{
    background-color: var(--el-checkbox-disabled-input-fill);
    border-color: var(--el-checkbox-disabled-border-color);
    cursor: not-allowed;
}

</style>

就可以了 ,最后一個(gè)是完整代碼,當(dāng)然如果想在沒(méi)有可選數(shù)據(jù)時(shí),將全選按鈕隱藏也可以把樣式改成display:none,文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-813917.html

到了這里,關(guān)于element-ui el-table表格勾選框條件禁用,及全勾選按鈕禁用, 記錄的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • element-ui表格高度自適應(yīng)(el-table 自適應(yīng)高度)

    想讓element-ui的表格 el-table 出現(xiàn)滾動(dòng)條的時(shí)候,如果不做處理就只能是 height=“XXXpx”,給它一個(gè)固定的高度,我們的頁(yè)面正常情況下,是不允許出現(xiàn)頁(yè)面級(jí)滾動(dòng)條的,也是不美觀的,想讓table自適應(yīng)高度并且有滾動(dòng)條,而且不會(huì)出現(xiàn)頁(yè)面級(jí)滾動(dòng)條,可以這么實(shí)現(xiàn),下面是我寫(xiě)

    2024年01月17日
    瀏覽(22)
  • vue中element-ui表格組件el-table封裝,在table表格中插入圖片

    vue中element-ui表格組件el-table封裝,在table表格中插入圖片

    ????????這次寫(xiě)的項(xiàng)目是寫(xiě)后臺(tái)管理系統(tǒng)這部分,對(duì)于后臺(tái)管理使用vue寫(xiě),用組件的話,table組件用得次數(shù)比較多,可以封裝一個(gè)table組件。 ????????1.如封裝的table組件: ?:prop=\\\"item.prop\\\"??:label=\\\"item.label\\\"是必須要有的,其他的可以根據(jù)自己需要寫(xiě) 。 2.封裝之后是就是使

    2024年02月15日
    瀏覽(31)
  • vue element-ui表格(el-table)數(shù)據(jù)導(dǎo)出execl文件

    功能實(shí)現(xiàn):element UI 的el-table數(shù)據(jù)導(dǎo)出為execl文件 使用到插件:xlsx、file-saver exportExecl.js 代碼如下: 頁(yè)面代碼如下:

    2024年02月14日
    瀏覽(30)
  • 修改element-ui中的表格el-table的滾動(dòng)條樣式

    一.單獨(dú)修改element-ui中的表格el-table的滾動(dòng)條樣式(兩種方法) 1. 2. ?二.保持整個(gè)頁(yè)面的滾動(dòng)條的風(fēng)格是一致(直接改全局的滾動(dòng)條樣式) 三.頁(yè)面內(nèi)某一組件滾動(dòng)條樣式美化? scroll-bar是需要滾動(dòng)條組件的元素,類名自定義

    2024年02月11日
    瀏覽(31)
  • Element-ui中表格el-table圖片預(yù)覽效果實(shí)現(xiàn)(非常實(shí)用)

    Element-ui中表格el-table圖片預(yù)覽效果實(shí)現(xiàn)(非常實(shí)用)

    ??作者:計(jì)算機(jī)編程-吉哥 ??簡(jiǎn)介:專業(yè)從事JavaWeb程序開(kāi)發(fā),微信小程序開(kāi)發(fā),定制化項(xiàng)目、 源碼、代碼講解、文檔撰寫(xiě)、ppt制作。做自己喜歡的事,生活就是快樂(lè)的。 ??心愿:點(diǎn)贊 ?? 收藏 ?評(píng)論??? ?? ?文末獲取源碼聯(lián)系 ??先展示效果:? ???使用的是下面這個(gè)插

    2024年02月11日
    瀏覽(35)
  • [element-ui] el-table表格合并 span-method

    element 中表格合并 span-method 函數(shù)詳解

    2024年02月13日
    瀏覽(31)
  • element-ui里el-table表格操作列多橫線怎么解決

    element-ui里el-table表格操作列多橫線怎么解決

    在vue中封裝了element-ui表格,然后使用插槽,fixed定位等,導(dǎo)致樣式出現(xiàn)了錯(cuò)亂 本文就到此結(jié)束了,希望大家共同努力,早日拿下 el?????。 如果文中有不對(duì)的地方,或是大家有不同的見(jiàn)解,歡迎指出 ????。 如果大家覺(jué)得所有收獲,歡迎一鍵三連????。

    2024年02月11日
    瀏覽(32)
  • element-ui 表格el-table高度不是一個(gè)固定值時(shí)固定表頭

    element-ui 表格el-table高度不是一個(gè)固定值時(shí)固定表頭

    elementui中為表格組件提供了height屬性實(shí)現(xiàn)固定表頭 height可以為數(shù)字或者字符串,當(dāng)為一個(gè)數(shù)字時(shí)表示固定的高度,也可以為百分比等字符串。 當(dāng)height不是一個(gè)固定值時(shí),如期望表格可以填充完頁(yè)面剩余空間,并且固定表頭時(shí),可以通過(guò)給height屬性賦值字符串形式實(shí)現(xiàn)。以頁(yè)

    2024年01月25日
    瀏覽(109)
  • vue使用Element UI時(shí),el-table表格整行操作單選禁選并隱藏全選框

    vue使用Element UI時(shí),el-table表格整行操作單選禁選并隱藏全選框

    需求:表格復(fù)選修改為單選,只可選擇一個(gè);不滿足條件的不可勾選;可進(jìn)行整行操作 注意使用的方法. 需求由復(fù)選改為單選后, 左上角全選框要進(jìn)行隱藏 ,復(fù)選框也變成單選框,這里是通過(guò)css樣式進(jìn)行調(diào)整的 勾選復(fù)選框的select和整行操作的row-click可以共用同一個(gè)方法,

    2024年02月13日
    瀏覽(23)
  • 解決vue-electron element-UI中el-table表格不顯示

    解決vue-electron element-UI中el-table表格不顯示

    問(wèn)題:element-UI官網(wǎng)上el-table組件,引入自己項(xiàng)目的時(shí)候表格不顯示。 解決方案: 修改.electron-vuewebpack.renderer.config.js 將 修改為 即可解決。

    2024年02月16日
    瀏覽(36)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包