vue radio单选框,获取当前项(每一项)的value值操作


Posted in Javascript onSeptember 10, 2020

前言

本文使用了lable关联选中,实际使用中如果不需要,直接将循环语句 v-for 写在 input标签上就可以

1、使用v-for循环的radio单选框

01)需要注意的是,这是使用的是 change 事件,而不是 click 点击事件

<template>
 <div>
  <label v-for="(item, index) in radioData" :key="index">
   <input
    type="radio"
    v-model="radioVal"
    :value="item.value"
    @change="getRadioVal"
   />
   {{ item.value }}
  </label>
 </div>
</template>

<script>
export default {
 data() {
  return {
   radioData: [
    { value: '全部' },
    { value: '部分' },
    { value: '零散' }
   ],
   radioVal: '全部' // 用于设置默认选中项
  };
 },
 methods: {
  getRadioVal() {
   console.log(this.radioVal);
  }
 }
};
</script>

2、不使用v-for循环的radio单选框

01)需要注意的是,这是使用的是 change 事件,而不是 click 点击事件

<template>
 <div>
  <label><input v-model="radioVal" type="radio" value="全部" @change="getRadioVal">全部</label>
  <label><input v-model="radioVal" type="radio" value="部分" @change="getRadioVal">部分</label>
  <label><input v-model="radioVal" type="radio" value="零散" @change="getRadioVal">零散</label>
 </div>
</template>
<script>
export default {
 data() {
  return {
   radioVal: '全部' // 用于设置默认选中项
  };
 },
 methods: {
  getRadioVal() { 
   console.log(this.radioVal);
  }
 }
};
</script>

点击每一项获得当前项的value值,使用v-for 和不使用v-for 实现的效果是一样的

这里就不分开写效果图了

vue radio单选框,获取当前项(每一项)的value值操作

如果本篇文章对你有帮助的话,很高兴能够帮助上你。

补充知识:vue绑定单选框(radio)和复选框(CheckBox)

vue radio单选框,获取当前项(每一项)的value值操作

html部分

<div style="width:500px;margin:50px auto;display:flex;flex-direction:column;">
    <div style="font-weight:600;font-size:18px">问卷调查</div>
    
    <div v-for="(item,index) in question" :key="index" style="padding-top:10px">
     <div style="margin-bottom:10px">{{item.title}}</div>
     <div v-if="item.sex" style="display:flex;align-items:center;">
     
      <div v-for="(item2,index2) in item.sex" :key="index2" @click="chooseSex(item2)" style="margin-right:20px">
       <input type="radio" :value="item2" v-model="radio2"> <span> {{item2}}</span>
      </div>
     </div>

     <div v-if="item.item" style="display:flex;align-items:center;">
      <div v-for="(item3,index3) in item.item" :key="index3" @click="chooseHobbied(item3)" style="margin-right:20px">
       <input type="checkbox" :value="item3" v-model="checkbox"><span> {{item3}}</span>
      </div>
     </div>
    </div>
   </div>

vue数据绑定

data() {
 return {
  radio2:'',
  checkbox:[],
  question:[
   {
    title:"1、请选择你的性别",
    sex:[
     '男','女'
    ]
   },
   {
    title:"2、请选择你的爱好",
    item:[
     '打球','读书','画画','游泳','跑步'
    ]
   }
  ], 
 };
},

js部分

//单选框radio选中值的改变
chooseSex(item){
    this.radio2 = item;
    console.log("点击",item,"值",this.radio2);
   },
   
    //复选框checkbox多项选择后的值,及取消选中后的其他值
   chooseHobbied(item){
    if(box.indexOf(item) === -1){
     box.push(item);
     this.checkbox = box;
     console.log("点击",item,"值",box);
    }else{
      box.splice(box.indexOf(item),1);
     console.log("box值",box);
     this.checkbox = box;
    }
   },

以上这篇vue radio单选框,获取当前项(每一项)的value值操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript中URL编码函数代码
Jan 11 Javascript
在jQuery中 关于json空对象筛选替换
Apr 15 Javascript
js实现单击图片放大图片的方法
Feb 17 Javascript
JS 对java返回的json格式的数据处理方法
Dec 05 Javascript
从零学习node.js之mysql数据库的操作(五)
Feb 24 Javascript
JavaScript实现跟随滚动缓冲运动广告框
Jul 15 Javascript
Javascript快速实现浏览器系统通知
Aug 26 Javascript
初识 Vue.js 中的 *.Vue文件
Nov 22 Javascript
JS插件clipboard.js实现一键复制粘贴功能
Dec 04 Javascript
取消Bootstrap的dropdown-menu点击默认关闭事件方法
Aug 10 Javascript
Vue 通过公共字段,拼接两个对象数组的实例
Nov 07 Javascript
JavaScript中ES6规范中let和const的用法和区别
Aug 06 Javascript
jquery实现简单每周轮换的日历
Sep 10 #jQuery
vue循环中点击选中再点击取消(单选)的实现
Sep 10 #Javascript
详解vue父子组件状态同步的最佳方式
Sep 10 #Javascript
vue使用echarts实现水平柱形图实例
Sep 09 #Javascript
在vue中实现清除echarts上次保留的数据(亲测有效)
Sep 09 #Javascript
vue 项目引入echarts 添加点击事件操作
Sep 09 #Javascript
Vue this.$router.push(参数)实现页面跳转操作
Sep 09 #Javascript
You might like
PHP数据库操作面向对象的优点
2006/10/09 PHP
PHP MemCached 高级缓存应用代码
2010/08/05 PHP
ThinkPHP3.1新特性之动态设置自动完成和自动验证示例
2014/06/19 PHP
HTML5如何适配 iPhone IOS 底部黑条
2021/03/09 HTML / CSS
学习ExtJS Window常用方法
2009/10/07 Javascript
JavaScript 三种不同位置代码的写法
2009/10/25 Javascript
Javascript事件实例详解
2013/11/06 Javascript
轻松创建nodejs服务器(8):非阻塞是如何实现的
2014/12/18 NodeJs
在Mac OS下使用Node.js的简单教程
2015/06/24 Javascript
JS文字球状放大效果代码分享
2015/08/19 Javascript
js+canvas绘制五角星的方法
2016/01/28 Javascript
Node.js程序中的本地文件操作用法小结
2016/03/06 Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
2016/05/19 Javascript
JavaScript版经典游戏之扫雷游戏完整示例【附demo源码下载】
2016/12/12 Javascript
Vue.js实战之Vuex的入门教程
2017/04/01 Javascript
JS正则表达式完美实现身份证校验功能
2017/10/18 Javascript
javaScript手机号码校验工具类PhoneUtils详解
2017/12/08 Javascript
详解 vue better-scroll滚动插件排坑
2018/02/08 Javascript
vue 实现v-for循环回来的数据动态绑定id
2019/11/07 Javascript
vue中路由跳转不计入history的操作
2020/09/21 Javascript
[02:11]DOTA2上海特级锦标赛主赛事第二日RECAP
2016/03/04 DOTA
python二分查找算法的递归实现方法
2016/05/12 Python
window7下的python2.7版本和python3.5版本的opencv-python安装过程
2019/10/24 Python
python全局变量引用与修改过程解析
2020/01/07 Python
Keras搭建自编码器操作
2020/07/03 Python
Java Unsafe类实现原理及测试代码
2020/09/15 Python
用python发送微信消息
2020/12/21 Python
Python 的 f-string 可以连接字符串与数字的原因解析
2021/02/20 Python
html5指南-5.使用web storage存储键值对的数据
2013/01/07 HTML / CSS
html5关于外链嵌入页面通信问题(postMessage解决跨域通信)
2020/07/20 HTML / CSS
在线购买廉价折扣书籍和小说:BookOutlet.com
2018/02/19 全球购物
关于清明节的演讲稿
2014/09/13 职场文书
办理信用卡工作证明
2014/09/30 职场文书
2019年描写人生经典诗句大全
2019/07/08 职场文书
导游词之湖北梁子湖
2019/11/07 职场文书
SQL Server使用T-SQL语句批处理
2022/05/20 SQL Server