Vue使用枚舉類型實(shí)現(xiàn)HTML下拉框步驟詳解
下拉框包含option中的Value和用來(lái)顯示的選項(xiàng), 一般后臺(tái)都是使用的Value值,而不是顯示在前臺(tái)的選項(xiàng)
第一步: 編寫下拉框需要的枚舉類型
StatusEnum.java
public enum StatusEnum { RED, YELLOW, GREEN }
第二步: 編寫用來(lái)存放下拉框中對(duì)應(yīng)的option中的Value和顯示的選項(xiàng)
StatusDTO.java
public class StatusDTO { private String code; private String name; //setter , getter }
第三步: 編寫controller (resource)
statusResource.java
@Path("/status") public class statusResource{ @GET @Path("/getStatus") public List<StatusDTO> getStatus(){ List<StatusDTO> list = new ArrayList<StatusDTO>(); StatusDTO statusDTO = null; for(StatusEnum status : StatusEnum.values()){ statusDTO = new StatusDTO(); statusDTO.setCode(status.toString()); list.add(statusDTO); } return list; } }
第四步: 編寫js文件
var statusModel ={ selectStatus:[], //存放下拉框結(jié)果 status:''//存放選中結(jié)果 } var selectVue = new Vue({ el:'#selectStatus',// 綁定DOM,一般是綁定div data:statusModel //標(biāo)簽中使用的model }) var selectStatusResource = Vue.resource('/status/getStatus').get().then(function (response) { var statusList = response.data; var list = []; var status = null; for(var i = 0; i < statusList.length; i++){ status = statusList[i].code == 'RED' ? '紅色' : statusList[i].code == 'YELLOW' ? '黃色' : statusList[i].code == 'GREEN' ? '綠色' : ''; list.push({code:statusList[i].code,name:status}); } statusModel.selectStatus = list; });
第五步: 編寫html文件
<div id="selectStatus" style="width:140px;height: 37px;text-align: right;margin: 0 2px;position: relative;float: left;"> <select id="status" style="width:100%;background: #ddebff;height: 35px;color: #082451; border: 1px solid #082451;border-radius: 2px;font-size: 12px; box-shadow: 3px 3px 3px #96c0e7 inset;" v-model="status"> <option value="-1">-請(qǐng)選擇-</option> <option v-for="option in selectStatus" :value="option.code">{{option.name}}</option> </select> </div>
顯示效果:
總結(jié)
以上所述是小編給大家介紹的Vue使用枚舉類型實(shí)現(xiàn)HTML下拉框步驟詳解,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
vue.js開發(fā)實(shí)現(xiàn)全局調(diào)用的MessageBox組件實(shí)例代碼
最近學(xué)習(xí)了Vue.js,感覺組件這個(gè)地方知識(shí)點(diǎn)挺多的,而且很重要,所以決定記錄下,下面這篇文章主要給大家介紹了關(guān)于利用vue.js開發(fā)實(shí)現(xiàn)全局調(diào)用的MessageBox組件的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-11-11vue?el-pagination分頁(yè)查詢封裝的示例代碼
本文主要介紹了vue?el-pagination分頁(yè)查詢封裝的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06vue實(shí)現(xiàn)百度搜索下拉提示功能實(shí)例
這篇文章主要介紹了vue實(shí)現(xiàn)百度搜索下拉提示功能實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06vue中的v-model原理,與組件自定義v-model詳解
這篇文章主要介紹了vue中的v-model原理,與組件自定義v-model詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來(lái)看看吧2020-08-08