Vue實(shí)現(xiàn)全選多個(gè)選擇框
Vue全選多個(gè)選擇框
可以使用 v-model
來(lái)綁定一個(gè)布爾類型的變量來(lái)實(shí)現(xiàn)全選多個(gè)選擇框的功能。
具體步驟
如下:
- 在
data
中定義一個(gè)數(shù)組,用來(lái)存儲(chǔ)所有需要選擇的項(xiàng)的狀態(tài)。 - 在模板中使用
v-for
指令循環(huán)渲染每個(gè)選擇框,并將每個(gè)選擇框的狀態(tài)綁定到數(shù)組中對(duì)應(yīng)的項(xiàng)上。 - 在模板中添加一個(gè)全選復(fù)選框,將其狀態(tài)綁定到一個(gè)布爾類型的變量上。
- 使用
watch
監(jiān)聽全選復(fù)選框的狀態(tài)變化,當(dāng)全選復(fù)選框的狀態(tài)改變時(shí),遍歷數(shù)組中的每一項(xiàng),將其狀態(tài)設(shè)置為全選復(fù)選框的狀態(tài)即可。
示例代碼
<template> <div> <input type="checkbox" v-model="selectAll"> 全選 <div v-for="(item, index) in items" :key="index"> <input type="checkbox" v-model="item.checked"> {{ item.label }} </div> </div> </template> <script> export default { data() { return { selectAll: false, items: [ { label: '選項(xiàng)1', checked: false }, { label: '選項(xiàng)2', checked: false }, { label: '選項(xiàng)3', checked: false }, ], }; }, watch: { selectAll(val) { this.items.forEach(item => { item.checked = val; }); }, }, }; </script>
在上面的代碼中,我們定義了一個(gè) selectAll
變量來(lái)表示全選復(fù)選框的狀態(tài),一個(gè) items
數(shù)組來(lái)存儲(chǔ)所有需要選擇的項(xiàng)的狀態(tài)。
在模板中,使用 v-for
指令循環(huán)渲染每個(gè)選擇框,并將每個(gè)選擇框的狀態(tài)綁定到數(shù)組中對(duì)應(yīng)的項(xiàng)上。同時(shí),還添加了一個(gè)全選復(fù)選框,并將其狀態(tài)綁定到 selectAll
變量上。
在 watch
中,監(jiān)聽 selectAll
變量的變化,當(dāng)它的狀態(tài)改變時(shí),遍歷 items
數(shù)組中的每一項(xiàng),將其狀態(tài)設(shè)置為 selectAll
的狀態(tài)即可實(shí)現(xiàn)全選功能。
結(jié)果展示
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Vue3實(shí)現(xiàn)列表無(wú)限滾動(dòng)的示例詳解
這篇文章主要為大家詳細(xì)介紹了如何使用Vue3實(shí)現(xiàn)列表無(wú)限滾動(dòng)的效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下2023-07-07Vue3中使用qrcode庫(kù)實(shí)現(xiàn)二維碼生成
Vue3中實(shí)現(xiàn)二維碼生成需要使用第三方庫(kù)來(lái)處理生成二維碼的邏輯,常用的庫(kù)有?qrcode和?vue-qrcode,本文主要介紹了Vue3中使用qrcode庫(kù)實(shí)現(xiàn)二維碼生成,感興趣的可以了解一下2023-12-12Vue使用Pinia輕松實(shí)現(xiàn)狀態(tài)管理
pinia,一個(gè)基于Vue3的狀態(tài)管理庫(kù),它可以幫助開發(fā)人員管理Vue應(yīng)用程序的狀態(tài),本文主要為大家介紹了Pinia的用法,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-06-06Vuex中g(shù)etters和actions的使用補(bǔ)充說(shuō)明
這篇文章主要介紹了在Vuex中關(guān)于getters和actions使用的補(bǔ)充作了簡(jiǎn)要說(shuō)明,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-09-09vue.js實(shí)現(xiàn)只能輸入數(shù)字的輸入框
這篇文章主要為大家詳細(xì)介紹了vue.js實(shí)現(xiàn)只能輸入數(shù)字的輸入框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-10-10淺談vue中g(shù)et請(qǐng)求解決傳輸數(shù)據(jù)是數(shù)組格式的問(wèn)題
這篇文章主要介紹了淺談vue中g(shù)et請(qǐng)求解決傳輸數(shù)據(jù)是數(shù)組格式的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08