说是Vue其实和原生并没有太大的区别。
单选框研究
原生html的单选框实现
用name属性来划分单选框小组
总结一下就是四个属性
- type (单选框:radio,复选框:checkbox)
- id
- value
- name/v-model(Vue)
点击label联动单选框实现效果
label中的for属性要和input中的id匹配<input type="radio" id="g" value="坂田银时"
name="favourite-character">
<label for="g">坂田银时</label>
<input type="radio" id="h" value="土方十四郎"
name="favourite-character">
<label for="g">土方十四郎</label>
vue中靠绑定v-model,不需要name属性
<input type="radio" id="g" value="坂田银时"
v-model="favouriteCharacter">
<label for="g">坂田银时</label>
<input type="radio" id="h" value="土方十四郎"
v-model="favouriteCharacter">
<label for="g">土方十四郎</label>
<!-- 显示选中值 -->
<input :value="favouriteCharacter">
复选框vue实现
<!-- favouriteCity是数组 -->
<input type="checkbox"
value="北京" v-model="favouriteCity">
<label for="beijing">北京</label>
<input type="checkbox" value="上海"
v-model="favouriteCity">
<label for="shanghai">上海</label>
<input type="checkbox" value="深圳"
v-model="favouriteCity">
<label for="shenzhen">深圳</label>
<input :value="favouriteCity">
最终效果