vuejs+element UI table表格中实现禁用部分复选框的方法

有时候我们构建这样带一列复选框的表格

然后希望根据条件禁用某个列表项的选择框,可以这样写

加上

:selectable="setDisabled"
然后下面定义setDisabled方法

HTML:

<el-table v-loading="questionBankLoading"
                    :data="questionBankTablelist"
                    row-key="id"
                    border
                    stripe
                    ref="tableRef"
                    @selection-change="handleQuestionBankChange">
            <el-table-column type="selection"
                             width="55"
                             align="center"
                            :selectable="setDisabled"/>
            <el-table-column v-for="(item,index) in questionBankColumns"
                             :prop="item.prop"
                             :label="item.label"
                             :key="index"
                             :show-overflow-tooltip="true">
              <template slot-scope="scope">
                <dict-tag style="width:100%"
                          :options="dict.type[item.dictType]"
                          :value="scope.row[item.prop]"
                          v-if="!isEmpty(item.dictType)"
                          type="text">
                </dict-tag>
                <span v-else>{{scope.row[item.prop]}} </span>
              </template>
            </el-table-column>

JS:

  methods: {
    setDisabled(row,index){
      if(row.questionSum<=0){
        return false
      } else {
        return true
      }
    }
  }
posted @   菜鸟辉哥  阅读(1072)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示