vue實(shí)現(xiàn)div單選多選功能
vue實(shí)現(xiàn)div單選多選功能,供大家參考,具體內(nèi)容如下
單選
單選:
多選:
單選功能
DOM層:
<div : @click='changeStatus(11)'>0-16歲</div> <div : @click='changeStatus(12)'>17-25歲</div> <div : @click='changeStatus(13)'>26-35歲</div> <div : @click='changeStatus(14)'>36-45歲</div> <div : @click='changeStatus(15)'>46-55歲</div> <div : @click='changeStatus(16)'>55歲以上</div>
js層:
new Vue({ el: ’#home’, data() { return { ageActive:11 //初始選中狀態(tài)的元素id } }, methods: { changeStatus(number){ this.ageActive = number; } } })
單選功能主要利用的是vue的數(shù)據(jù)驅(qū)動(dòng)原則改變當(dāng)前dom元素的狀態(tài)
多選功能
DOM層:
<div @click='changeStatus($event,11)'>0-16歲</div><div @click='changeStatus($event,12)'>17-25歲</div><div @click='changeStatus($event,13)'>26-35歲</div><div @click='changeStatus($event,14)'>36-45歲</div><div @click='changeStatus($event,15)'>46-55歲</div><div @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樣式 } } })
多選功能于單選功能不同,沒(méi)有用到vue的數(shù)據(jù)驅(qū)動(dòng)原則,單純的操作dom元素,跟vue沒(méi)啥關(guān)系。
關(guān)于vue.js組件的教程,請(qǐng)大家點(diǎn)擊專題vue.js組件學(xué)習(xí)教程進(jìn)行學(xué)習(xí)。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. js實(shí)現(xiàn)跳一跳小游戲2. JVM之class文件結(jié)構(gòu)3. js實(shí)現(xiàn)貪吃蛇小游戲(加墻)4. Python中Anaconda3 安裝gdal庫(kù)的方法5. XMLDOM對(duì)象方法:對(duì)象屬性6. Html5播放器實(shí)現(xiàn)倍速播放的方法示例7. Ajax報(bào)錯(cuò)400的參考解決辦法8. 詳解Python 關(guān)聯(lián)規(guī)則分析9. asp.net core 認(rèn)證和授權(quán)實(shí)例詳解10. CSS linear-gradient屬性案例詳解
