Vue實(shí)現(xiàn)全選多個(gè)選擇框
Vue全選多個(gè)選擇框
可以使用 v-model 來(lái)綁定一個(gè)布爾類(lèi)型的變量來(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è)布爾類(lèi)型的變量上。
- 使用
watch監(jiān)聽(tīng)全選復(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)聽(tīng) 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-07
Vue3中使用qrcode庫(kù)實(shí)現(xiàn)二維碼生成
Vue3中實(shí)現(xiàn)二維碼生成需要使用第三方庫(kù)來(lái)處理生成二維碼的邏輯,常用的庫(kù)有?qrcode和?vue-qrcode,本文主要介紹了Vue3中使用qrcode庫(kù)實(shí)現(xiàn)二維碼生成,感興趣的可以了解一下2023-12-12
Vue使用Pinia輕松實(shí)現(xiàn)狀態(tài)管理
pinia,一個(gè)基于Vue3的狀態(tài)管理庫(kù),它可以幫助開(kāi)發(fā)人員管理Vue應(yīng)用程序的狀態(tài),本文主要為大家介紹了Pinia的用法,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-06-06
Vuex中g(shù)etters和actions的使用補(bǔ)充說(shuō)明
這篇文章主要介紹了在Vuex中關(guān)于getters和actions使用的補(bǔ)充作了簡(jiǎn)要說(shuō)明,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-09-09
vue.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

