国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

vue使用監聽實現全選反選功能

2024-05-06 15:32:54
字體:
來源:轉載
供稿:網友

最近在學習vue這一塊的內容,在項目中用到了全選全不選的功能,開始的時候借鑒了別人寫的功能,但感覺寫的有一些缺陷,然后就自己寫了一套,如有寫的不好的地方,請各位大佬指教,廢話不多說,上代碼。

首先定義數據

data: {   /*全選、全不選*/   allCheck:false,//全選功能   //循環數據   checkArr:[     {cityName:"東城區",isCheck:false},     {cityName:"西城區",isCheck:false},     {cityName:"朝陽區",isCheck:false},     {cityName:"豐臺區",isCheck:false},   ],}

然后是頁面代碼:

 <div>   <div v-for="carType in checkArr">     <p>       <input type="checkbox" v-model="carType.isCheck"/>       <a href="javascript:void(0)" rel="external nofollow" >{{carType.typeName}}</a>    </p>   </div></div><div>  <input type="checkbox" id="chooseAllType" v-model="allCheck" @click="selectAll(allCheck)"/>  全選</div>

下面是js中代碼

methods: {  /*點擊全選,選中所有復選框*/  selectAll: function (data) {    var _this = this;    //如果父級被選中,那么子集循環,全被給checked=true    if (!data) {      _this.checkArr.forEach(function (item) {        item.isCheck = true;      });    } else {      //相反,如果沒有被選中,子集應該全部checked=false      _this.checkArr.forEach(function (item) {        item.isCheck = false;      });    }  },}

下面是監聽部分代碼,主要功能為如果子集全部選中,全選按鈕同樣被勾選

watch:{  /*監聽全選事件*/  checkArr:{    handler(value){      var _this = this;      var count=0;      for(var i=0;i<value.length;i++){        if(value[i].isCheck==true){          count++;        }      }      //如果子集全部選中,全選按鈕設置選中狀態      if(count==value.length){        _this.allCheck=true;      }else{        _this.allCheck=false;      }    },    deep:true  },}

總結

以上所述是小編給大家介紹的vue使用監聽實現全選反選功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對錯新站長站網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 襄城县| 河西区| 宣恩县| 同仁县| 陆河县| 内江市| 延津县| 泸溪县| 浦县| 浮山县| 武宣县| 沙坪坝区| 济南市| 寻乌县| 邓州市| 涡阳县| 图们市| 淮阳县| 获嘉县| 盐山县| 锡林郭勒盟| 开原市| 沛县| 西藏| 吴川市| 英超| 临江市| 合水县| 宿松县| 永福县| 鄄城县| 德阳市| 江永县| 孝感市| 宜阳县| 阿拉善右旗| 遂宁市| 谢通门县| 进贤县| 原平市| 舒城县|