详解微信小程序Radio选中样式切换

发布时间 - 2026-01-11 02:13:10    点击率:

详解微信小程序Radio选中样式切换

本篇文章主要讲解在微信小程序中如何根据Radio选中来切换样式。效果如下:

原理主要是通过判断一个radio-group中哪个被选中,就让它加上一个“active”的样式。

代码如下:

<!--index.wxml--> 
<view class="container"> 
 <radio-group bindchange="radioCheckedChange"> 
  <view class="flex_box"> 
   <view class="flex_item"> 
    <label class="{{radioCheckVal==0?'active':''}}">人气 
     <radio value="0"  hidden="true"></radio> 
    </label> 
   </view> 
   <view class="flex_item"> 
    <label class="{{radioCheckVal==1?'active':''}}"> 销量 
     <radio value="1" hidden="true"></radio> 
    </label> 
   </view> 
   <view class="flex_item"> 
    <label class="{{radioCheckVal==2?'active':''}}"> 价格↑ 
     <radio value="2" hidden="true"></radio> 
    </label> 
   </view> 
  </view> 
 </radio-group> 
</view> 

index.wxml代码中可以看到,首先隐藏radio的原始样式,利用lable点击来触发radioCheckedChange事件监听函数。

/**index.wxss**/ 
radio-group{ 
 width: 100%; 
} 
.flex_box{ 
 display: flex; 
 width: 100%; 
 background: #eee; 
} 
.flex_item{ 
 flex: 1; 
 text-align: center; 
} 
.flex_item label{ 
 padding: 10px 0; 
 display: inline-block; 
 width: 50%; 
} 
.flex_item label.active{ 
 color: red; 
 border-bottom: 2px solid red; 
  
} 

index.wxss中,使用flex布局让它们平分,并定义“active”样式。

//index.js 
//获取应用实例 
var app = getApp() 
Page({ 
 data: { 
  radioCheckVal:0 
 }, 
 radioCheckedChange:function(e){ 
  this.setData({ 
   radioCheckVal:e.detail.value 
  }) 
 } 
}) 

index.js中,定义一个接收radio选中值的变量radioCheckVal,当监听事件被触发时,记录下被选中的radio value。

最重要的一点是这一句:

<label class="{{radioCheckVal==0?'active':''}}">人气 
    <radio value="0"  hidden="true"></radio> 
   </label> 

利用简单的判断表达式,取data中被选中的radio,判断当==当前radio value值时,为lable添加上“active”选中样式。

 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!


# 详解微信小程序Radio  # 小程序  # Radio切换  # 微信小程序swiper组件实现抖音翻页切换视频功能的实例代码  # 微信小程序仿抖音视频之整屏上下切换功能的实现代码  # 微信小程序开发之选项卡(窗口底部TabBar)页面切换  # 微信小程序左右滑动切换页面详解及实例代码  # 微信小程序开发之实现选项卡(窗口顶部TabBar)页面切换  # 微信小程序仿抖音短视频切换效果的实例代码  # 这一  # 最重要  # 希望能  # 可以看到  # 让它  # 谢谢大家  # 主要是  # 应用实例  # flex_box  # flex_item  # radioCheckedChange  # container  # bindchange  # view  # hidden  # true  # lable  # js  # label  # radioCheckVal 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  北京的网站制作公司有哪些,哪个视频网站最好?  如何在IIS中新建站点并配置端口与物理路径?  Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权  Laravel如何将应用部署到生产服务器_Laravel生产环境部署流程  Win11怎么关闭专注助手 Win11关闭免打扰模式设置【操作】  西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?  使用PHP下载CSS文件中的所有图片【几行代码即可实现】  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  Android实现代码画虚线边框背景效果  Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】  JavaScript中的标签模板是什么_它如何扩展字符串功能  Laravel如何处理异常和错误?(Handler示例)  公司网站制作价格怎么算,公司办个官网需要多少钱?  如何正确选择百度移动适配建站域名?  Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用  Laravel如何为API生成Swagger或OpenAPI文档  香港服务器建站指南:免备案优势与SEO优化技巧全解析  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  如何在万网自助建站中设置域名及备案?  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  LinuxShell函数封装方法_脚本复用设计思路【教程】  如何用PHP快速搭建高效网站?分步指南  Laravel如何创建和注册中间件_Laravel中间件编写与应用流程  阿里云网站搭建费用解析:服务器价格与建站成本优化指南  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  焦点电影公司作品,电影焦点结局是什么?  C++时间戳转换成日期时间的步骤和示例代码  如何正确下载安装西数主机建站助手?  Laravel如何记录日志_Laravel Logging系统配置与自定义日志通道  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  如何在建站之星绑定自定义域名?  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  如何在VPS电脑上快速搭建网站?  Laravel Docker环境搭建教程_Laravel Sail使用指南  谷歌Google入口永久地址_Google搜索引擎官网首页永久入口  IOS倒计时设置UIButton标题title的抖动问题  Python文本处理实践_日志清洗解析【指导】  HTML 中动态设置元素 name 属性的正确语法详解  Laravel如何使用Service Provider服务提供者_Laravel依赖注入与容器绑定【深度】  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  Laravel如何实现文件上传和存储?(本地与S3配置)  iOS发送验证码倒计时应用  如何解决hover在ie6中的兼容性问题  简单实现jsp分页  JavaScript常见的五种数组去重的方式  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?