欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

el-table?選中行與復(fù)選框相互聯(lián)動的實現(xiàn)步驟

 更新時間:2022年10月25日 09:09:55   作者:Ao_min  
這篇文章主要介紹了el-table?選中行與復(fù)選框相互聯(lián)動,分為兩步,第一步點擊行時觸發(fā)復(fù)選框的選擇或取消,第二步點擊復(fù)選框時觸發(fā)相應(yīng)行的變化,本文通過實例代碼給大家詳細(xì)講解,需要的朋友可以參考下

需求:對el-table 選中行時復(fù)選框也被選中,選中復(fù)選框時觸發(fā)行的相應(yīng)變化(攏共分兩步)

步驟:

第一步:點擊行時觸發(fā)復(fù)選框的選擇或取消;

第二步:點擊復(fù)選框時觸發(fā)相應(yīng)行的變化(問題關(guān)鍵在怎么獲取復(fù)選框選取的行)

1. 點擊行時觸發(fā)復(fù)選框的選擇或取消

// <template>
<el-table
            class="right-panel-table"
            :data="tableData"           
            @selection-change="(val) => handleSelectionChange(val,'ischeckboxTick')"
            ref="multipleTable"
            v-loading="planLoading"
            @cell-mouse-enter="handleMouseEnter"
            @cell-mouse-leave="handleMouseOut"
            @row-click="(row,column,event) => handleRowClick(row,column,event,'onclumn')"
            highlight-current-row
          >
 
//  <script>  添加row-click方法,點擊列表行時觸發(fā)
handleRowClick(row,column,event, onclumn){  
      if(onclumn === 'onclumn') {
        this.isonClunm = true;
      }
      row.flag = !row.flag;
      this.$refs.multipleTable.toggleRowSelection(row, row.flag);
      if(row.flag) {
        this.selectSatitleLatLon(row);
      } else {
        this.unselectSatitleLatLon(row);
      }
}

添加完以上代碼后,點擊行,相應(yīng)行前面的復(fù)選框會跟著選中或取消

2.點擊復(fù)選框時觸發(fā)相應(yīng)行的變化(問題關(guān)鍵在怎么獲取復(fù)選框選取的行)

當(dāng)點擊列表行時,先觸發(fā)row-click事件,然后再觸發(fā) selection-change事件,點擊復(fù)選框時只觸發(fā)selection-change事件,想要判斷出點擊復(fù)選框時觸發(fā)的是哪一行時,則需要對上一次選中的列表項和這次選中的列表項對比

// template部分同上
// <script>
handleSelectionChange(val, checkFlag) {
      let that = this;
      if(checkFlag === 'ischeckboxTick') {
        that.ischeckboxTick = true
      }
      // 獲取當(dāng)前增加的或者減少的那條數(shù)據(jù)
      let n = {};
      let currentVal = [];
      val.forEach(item => {
        currentVal.push(item);
      })
      if(val.length > that.multipleSelection.length) {
        // 增加時比之前不一樣的某個值
        n = (val.filter(item => !that.multipleSelection.includes(item)))[0];
      } else {
        // 減少時與之前不一樣的值
        let oldSelect = [];
        that.multipleSelection.forEach(item => {
          oldSelect.push(item)
        })
        if(val.length === 0) {
          n = that.multipleSelection[0];
        } else {
          that.multipleSelection.forEach((item, index) => {
            let delIndex = 0;
            currentVal.forEach((item1, index1) => {
              if(item.sname === item1.sname && item.startTime === item1.startTime && item.endTime === item1.endTime) {
                delIndex = index;
                currentVal.splice(index1, 1);
                oldSelect.splice(delIndex, 1, '');   
              }
            })
          })
          oldSelect.forEach(item => {
            if(item !== '') {
              n = item
            }
          })
        }
      }
 
      that.multipleSelection = val;  // 選中的所有項
      that.isonClunm = false;
      that.ischeckboxTick = false;
     
    },

到此這篇關(guān)于el-table 選中行與復(fù)選框相互聯(lián)動的文章就介紹到這了,更多相關(guān)el-table 復(fù)選框聯(lián)動內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 解決vue中菜單再次點擊內(nèi)容不刷新問題

    解決vue中菜單再次點擊內(nèi)容不刷新問題

    當(dāng)elementUI中菜單打開后,再次點擊不會刷新的問題,導(dǎo)致菜單再次點擊不刷新的根本原因是頁面打開后,再次打開相同的頁面是不會刷新的,這應(yīng)該是框架的機制就是如此,小編整理了兩個比較不錯的解決方法,需要的朋友可以參考下
    2023-08-08
  • vue vantUI tab切換時 list組件不觸發(fā)load事件的問題及解決方法

    vue vantUI tab切換時 list組件不觸發(fā)load事件的問題及解決方法

    這篇文章主要介紹了vue vantUI tab切換時 list組件不觸發(fā)load事件的解決辦法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • 使用Vue.$set()或者Object.assign()修改對象新增響應(yīng)式屬性的方法

    使用Vue.$set()或者Object.assign()修改對象新增響應(yīng)式屬性的方法

    vue代碼中,只要在data對象里定義的對象,賦值后,任意一個屬性值發(fā)生變化,視圖都會實時變化,這篇文章主要介紹了使用Vue.$set()或者Object.assign()修改對象新增響應(yīng)式屬性,需要的朋友可以參考下
    2022-12-12
  • vue3中template使用ref無需.value原因解析

    vue3中template使用ref無需.value原因解析

    vue3的template中使用ref變量無需使用.value,還可以在事件處理器中進(jìn)行賦值操作時,無需使用.value就可以直接修改ref變量的值,這篇文章主要介紹了原來vue3中template使用ref無需.value是因為這個,需要的朋友可以參考下
    2024-06-06
  • vue-router跳轉(zhuǎn)頁面的方法

    vue-router跳轉(zhuǎn)頁面的方法

    本篇文章主要介紹了vue-router跳轉(zhuǎn)頁面的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • Vue keep-alive組件的使用及如何清除緩存

    Vue keep-alive組件的使用及如何清除緩存

    本文介紹了Vue keep-alive組件的使用及如何清除緩存,給大家分享清除緩存的幾種方法,結(jié)合實例代碼給大家講解的非常詳細(xì),需要的朋友跟隨小編一起看看吧
    2023-10-10
  • elementPlus組件之表格編輯并校驗功能實現(xiàn)

    elementPlus組件之表格編輯并校驗功能實現(xiàn)

    本文詳細(xì)介紹了如何使用Element Plus組件實現(xiàn)表格的單條數(shù)據(jù)新增、編輯、刪除操作,并對數(shù)據(jù)進(jìn)行校驗,代碼簡單易懂,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • Vue將頁面導(dǎo)出為圖片或者PDF

    Vue將頁面導(dǎo)出為圖片或者PDF

    這篇文章主要為大家詳細(xì)介紹了Vue導(dǎo)出頁面為PDF格式,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-06-06
  • .vue文件編譯成瀏覽器可執(zhí)行文件的流程詳解

    .vue文件編譯成瀏覽器可執(zhí)行文件的流程詳解

    這篇文章主要給大家介紹了.vue?文件是如何編譯成瀏覽器可執(zhí)行的文件,文中通過代碼示例將編譯流程介紹的非常詳細(xì),對我們的學(xué)習(xí)或工作有一定的價值,感興趣的同學(xué)可以參考閱讀下
    2023-09-09
  • vue.js的狀態(tài)管理vuex中store的使用詳解

    vue.js的狀態(tài)管理vuex中store的使用詳解

    今天小編就為大家分享一篇vue.js的狀態(tài)管理vuex中store的使用詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11

最新評論