您好,登錄后才能下訂單哦!
小編這次要給大家分享的是如何用vue實現div單選多選功能,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。
vue實現div單選多選功能,供大家參考,具體內容如下
單選
單選:
多選:
單選功能
DOM層:
<div class="labeloption" :class="{checked:ageActive == 11}" @click="changeStatus(11)">0-16歲</div> <div class="labeloption" :class="{checked:ageActive == 12}" @click="changeStatus(12)">17-25歲</div> <div class="labeloption" :class="{checked:ageActive == 13}" @click="changeStatus(13)">26-35歲</div> <div class="labeloption" :class="{checked:ageActive == 14}" @click="changeStatus(14)">36-45歲</div> <div class="labeloption" :class="{checked:ageActive == 15}" @click="changeStatus(15)">46-55歲</div> <div class="labeloption" :class="{checked:ageActive == 16}" @click="changeStatus(16)">55歲以上</div>
js層:
new Vue({ el: '#home', data() { return { ageActive:11 //初始選中狀態的元素id } }, methods: { changeStatus(number){ this.ageActive = number; } } })
單選功能主要利用的是vue的數據驅動原則改變當前dom元素的狀態
多選功能
DOM層:
<div class="labeloption checked" @click="changeStatus($event,11)">0-16歲</div> <div class="labeloption" @click="changeStatus($event,12)">17-25歲</div> <div class="labeloption" @click="changeStatus($event,13)">26-35歲</div> <div class="labeloption" @click="changeStatus($event,14)">36-45歲</div> <div class="labeloption" @click="changeStatus($event,15)">46-55歲</div> <div class="labeloption" @click="changeStatus($event,16)">55歲以上</div>
js層:
new Vue({ el: '#home', data() { methods: { changeStatus(e,number){ if (e.target.className.indexOf("checked") == -1) { e.target.className = "labeloption checked"; //選中div樣式 } else { e.target.className = "labeloption";//未選中div樣式 } } })
多選功能于單選功能不同,沒有用到vue的數據驅動原則,單純的操作dom元素,跟vue沒啥關系。
看完這篇關于如何用vue實現div單選多選功能的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。