欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue.js實(shí)現(xiàn)單選框、復(fù)選框和下拉框示例

 更新時(shí)間:2017年07月18日 09:59:49   作者:Wang-ccnu  
本篇文章主要介紹了vue.js實(shí)現(xiàn)單選框、復(fù)選框和下拉框示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

Vue.js可以很方便的實(shí)現(xiàn)數(shù)據(jù)雙向綁定,所以在處理表單,人機(jī)交互方面具有很大的優(yōu)勢(shì)。下邊以單選框、復(fù)選框和下拉框?yàn)槔榻B他們?cè)贖TML和Vue.js中的具體實(shí)現(xiàn)方式。

一、單選框

  在傳統(tǒng)的HTML中實(shí)現(xiàn)單選框的方法如下:

<div id="app"> 
 <input type="radio" name="gender" value="man" id="man"/><label for="man">男</label> 
 <input type="radio" name="gender" value="woman" id="women"/><label for="women">女</label> 
</div> 

注:這里name屬性值必須相同,以確保同一時(shí)間只有一個(gè)能被選中。同時(shí)用于識(shí)別發(fā)送至服務(wù)器的數(shù)據(jù);value值也很重要,當(dāng)按鈕被選中時(shí),該值將發(fā)送給服務(wù)器;

用vue.js實(shí)現(xiàn)單選框比較方便,舉例如下。我們不再需要name屬性,只需要使用v-model指令給每個(gè)選項(xiàng)綁定同一個(gè)變量就可以確保同一時(shí)間只有一個(gè)被選中,同時(shí)value屬性還是需要的,表示選中時(shí)的值。

<div id="app"> 
 <label>男<input type="radio" v-model="gender" value="man"/></label> 
 <label>女<input type="radio" v-model="gender" value="woman"/></label> 
 <p>已選:{{gender}}</p><!--如果用原生js實(shí)現(xiàn)此功能比較麻煩--> 
</div> 
<script> 
 var app=new Vue({ 
  el:'#app', 
  data:{ 
   gender:'' 
  } 
 }); 
</script> 

二、復(fù)選框

  在傳統(tǒng)的HTML中實(shí)現(xiàn)復(fù)選框代碼如下:

<div id="app"> 
 <input type="checkbox" name="whom" value="jack" id="Jack"/><label for="Jack">jack</label> 
 <input type="checkbox" name="whom" value="bob" id="Bob"/><label for="Bob">bob</label> 
 <input type="checkbox" name="whom" value="alice" id="Alice"/><label for="Alice">alice</label> 
</div> 

從以上代碼可以看到:HTML中單選框和復(fù)選框的構(gòu)造方法類似,只是type值變成checkbox,同時(shí)也用name和value表征一個(gè)復(fù)選框以及選中情況。

在vue.js中構(gòu)造復(fù)選框也與單選框類似,只是每個(gè)選項(xiàng)框都用v-model綁定一個(gè)變量,這些變量一般放在一個(gè)對(duì)象中,或者為v-model綁定一個(gè)相同的屬性名稱,且屬性為數(shù)組;針對(duì)這兩種情況的舉例如下:

使用v-model為每個(gè)選項(xiàng)框綁定一個(gè)變量:

<div id="app"> 
 <label>jack<input type="checkbox" v-model="person.jack"/></label> 
 <label>bob<input type="checkbox" v-model="person.bob"/></label> 
 <label>alice <input type="checkbox" v-model="person.alice"/></label> 
 <p>已選:{{person}}</p> 
</div> 
<script> 
 var app = new Vue({ 
  el: '#app', 
  data: { 
   person: {jack: false, bob: false, alice: false} 
  } 
 }) 
</script> 

從以上代碼可以看到:這里已經(jīng)不需要value屬性,為每個(gè)屬性綁定的值是boolean類型的,當(dāng)選中時(shí)該值變?yōu)閠rue,沒選中為false;

給v-model綁定一個(gè)相同的數(shù)組類型的屬性:

<div id="app"> 
 <label>jack<input type="checkbox" v-model="whom" value="jack"/></label> 
 <label>bob<input type="checkbox" v-model="whom" value="bob"/></label> 
 <label>alice <input type="checkbox" v-model="whom" value="alice"/></label> 
 <p>已選:{{whom.join('|')}}</p> 
</div> 
<script> 
 var app = new Vue({ 
  el: '#app', 
  data: { 
   whom: [] 
 } 
 }) 
</script> 

從代碼中可以看到:為每個(gè)選項(xiàng)都綁定一個(gè)相同的數(shù)組名稱,這里需要value屬性,當(dāng)被選中時(shí),相應(yīng)的value值會(huì)加入到數(shù)組中,取消選中時(shí),刪除數(shù)組中對(duì)應(yīng)的value值。

三、下拉框

傳統(tǒng)的用HTML構(gòu)造下拉框的代碼如下:

<select name="selected"> 
 <option value="a">A</option> 
 <option value="b">B</option> 
 <option value="c">C</option> 
</select> 

其中name用于發(fā)送給服務(wù)器時(shí)的數(shù)據(jù)識(shí)別,value為選中時(shí)發(fā)送給服務(wù)器的值。如果option中省略value,那么發(fā)送給服務(wù)器的值為option標(biāo)簽之間的值。

用vue2.0實(shí)現(xiàn)下拉框的方法如下:

<div id="app"> 
 <select v-model="selected"> 
  <option v-for="item in items" v-bind:value="item.value">{{item.text}}</option> 
 </select> 
 <span>已選:{{selected}}</span> 
</div> 
<script src="vue.js"></script> 
<script> 
 new Vue({ 
  el:'#app', 
  data:{ 
   items:[{text:'A',value:'a'},{text:'B',value:'b'},{text:'C',value:'c'}], 
   selected:'' 
  } 
 }); 
</script> 

從代碼中可以看到,使用v-for指令,避免重復(fù)書寫option標(biāo)簽,同時(shí)用v-bind指令綁定value屬性。當(dāng)選中某一項(xiàng)時(shí),該選項(xiàng)的value值賦給selected變量。

不管是html書寫,還是vue實(shí)現(xiàn),如果需要實(shí)現(xiàn)多選下拉框,只需要在select標(biāo)簽中寫入multiple屬性(同時(shí)vue中,selected變量初始化為一個(gè)空數(shù)組)。

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue中使用axios的作用

    vue中使用axios的作用

    Axios是一個(gè)功能強(qiáng)大、易用性高的HTTP庫,適用于大多數(shù)的前端項(xiàng)目,它提供了豐富的功能和靈活的配置選項(xiàng),可以滿足不同項(xiàng)目的需求,這篇文章主要介紹了vue中使用axios的作用,需要的朋友可以參考下
    2023-08-08
  • 詳解vuex的簡單使用

    詳解vuex的簡單使用

    這篇文章主要介紹了詳解vuex的簡單使用,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-03-03
  • vue實(shí)現(xiàn)某元素吸頂或固定位置顯示(監(jiān)聽滾動(dòng)事件)

    vue實(shí)現(xiàn)某元素吸頂或固定位置顯示(監(jiān)聽滾動(dòng)事件)

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)某元素吸頂或固定位置顯示,監(jiān)聽滾動(dòng)事件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • vue history 模式打包部署在域名的二級(jí)目錄的配置指南

    vue history 模式打包部署在域名的二級(jí)目錄的配置指南

    這篇文章主要介紹了vue history 模式打包部署在域名的二級(jí)目錄的配置指南 ,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-07-07
  • vue實(shí)現(xiàn)物流時(shí)間軸效果

    vue實(shí)現(xiàn)物流時(shí)間軸效果

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)物流時(shí)間軸效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • vue-router 導(dǎo)航鉤子的具體使用方法

    vue-router 導(dǎo)航鉤子的具體使用方法

    本篇文章主要介紹了vue-router 導(dǎo)航鉤子的具體使用方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-08-08
  • Vue2單一事件管理組件通信

    Vue2單一事件管理組件通信

    這篇文章主要為大家詳細(xì)介紹了Vue2單一事件管理組件通信的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Vue.JS入門教程之處理表單

    Vue.JS入門教程之處理表單

    這篇文章主要為大家詳細(xì)介紹了Vue.JS入門教程之處理表單,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • Vue下路由History模式打包后頁面空白的解決方法

    Vue下路由History模式打包后頁面空白的解決方法

    這篇文章主要介紹了Vue下路由History模式打包后頁面空白,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-06-06
  • Vue實(shí)現(xiàn)圖書管理案例

    Vue實(shí)現(xiàn)圖書管理案例

    這篇文章主要為大家詳細(xì)介紹了Vue實(shí)現(xiàn)圖書管理案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-01-01

最新評(píng)論