小程序自定义多选按钮 给后台传值方法

小程序自定义多选按钮

1、html部分

<checkbox-group bindchange="checkboxChange" class = "flex">

<label class="checkbox {{item.checked?‘active‘:‘‘}}"

wx:for="{{items}}"

bindtap="addclass"

data-index="{{index}}">

<checkbox value="{{item.name}}" checked="{{item.checked}}"/>{{item.value}}

</label>

</checkbox-group>

2、css部分

checkbox{

opacity: 0;

position: absolute;

top: 0;

left: 0;

height: 100rpx;

width: 200rpx;

}

.checkbox{

position: relative;

height: 100rpx;

line-height: 100rpx;

width: 200rpx;

background: #ccc;

color: #fff;

font-size: 28rpx;

border-radius: 50rpx;

margin: 20rpx;

text-align: center;

padding: 0 20rpx;

box-sizing: border-box;

}

.flex{

display: flex;

justify-content: space-between;

align-items: center;

flex-wrap: wrap;

}

.active{

background: #FED52F;

}

//JavaScript部分

Page({

data: {

items: [

{ name: ‘USA‘, value: ‘美国‘, checked: false },

{ name: ‘CHN‘, value: ‘中国‘, checked: true },

{ name: ‘BRA‘, value: ‘巴西‘, checked: false },

{ name: ‘JPN‘, value: ‘日本‘, checked: false },

{ name: ‘ENG‘, value: ‘英国‘, checked: false },

{ name: ‘TUR‘, value: ‘法国‘, checked: false },

]

},

checkboxChange: function (e) {

console.log(‘checkbox发生change事件,携带value值为:‘, e.detail.value)

},

//添加class 样式

addclass:function(e){

let self = this

//获取数据

let list = self.data.items

//获取index

let index = e.currentTarget.dataset.index

//如果为true变为false

if(list[index].checked){

list[index].checked=false

}else{

list[index].checked = true

}

//重新赋值

self.setData({

items:list

})

},

})

这样一个简单的 多选按钮就做出来了

效果图如下 样式可以自己修改

原文地址:https://www.cnblogs.com/qq976864507/p/12114923.html

时间: 2024-08-01 02:06:58

小程序自定义多选按钮 给后台传值方法的相关文章

微信小程序-自定义复选框

功能: 1.需要多选复选框,并且可以上拉滚动: 2.需要通过名称手写字母排序的,并且可以上拉滚动: 常规的小程序自带的原生picker无法满足我们的要求,因此一些特殊效果需要我们自定义来实现,废话不多说,我们直接看效果: index.wxml布局 <view class="container"> <view class='class bgFFF' bindtap='isDep'> <view class='class-text'> <text

小程序“自定义关键词”功能的常见问答

我们知道小程序可以通过线下扫码.公众号.好友分享.长按小程序码.搜索小程序名称来找到,现在又多了一个新方式——小程序后台新增自定义关键词功能:已发布小程序的开发者,可提交最多10个与小程序业务相关的关键词,帮助你的小程序更好地被发现. (登陆小程序后台——点击左侧“推广”添加关键词) 自定义关键词搜索策略将于6月9日生效.届时,用户可以通过搜索关键词,找到相关的小程序.小程序的关键词每个月可以修改三次. 开发者还可在后台看到关键词推广效果. 我们希望通过“自定义关键词”功能,帮助用户在微信内更便

值得记录的(五)- 微信小程序自定义 tabbar

一定的需求情况下,无法使用小程序原生的 tabbar 的时候,需要自行实现一个和 tabbar 功能一模一样的自制组件. 查阅了海量的博客和文档之后,亲自踩坑.总结了三种在不使用微信小程序原生 tabbar的情况下自制 tabbar 的方法.并说说这几种方法各自的特色. 类 navigator 跳转方式 类 navigator 跳转方式是我自己起的名称,因为它的实现思路就是这个样子的.期初参考 微信小程序自定义tabBar组件开发 这篇博文的思路.进行了这种方式的尝试,并为后续提供了解决思路.在

微信小程序自定义弹窗wcPop插件|仿微信弹窗样式

微信小程序自定义组件弹窗wcPop|小程序消息提示框|toast自定义模板弹窗 平时在开发小程序的时候,弹窗应用场景还是蛮广泛的,但是微信官方提供的弹窗比较有局限性,不能自定义修改.这个时候首先想到的是自定义组件化开发,就是把弹出框封装成一个组件,然后多处调用. 解决了小程序开发自定义弹窗出现后,遮罩层下的页面仍可以滚动的方法: 给遮罩层的最外层view中加入catchtouchmove="preventTouchMove" 即可解决该遮罩层点透问题. 根据需要还可以自定义多个按钮及事

小程序自定义单页面、全局导航栏

摘要: 小程序开发技巧. 作者:小白 原文:小程序自定义单页面.全局导航栏 Fundebug经授权转载,版权归原作者所有. 需求 产品说小程序返回到首页不太方便,想添加返回首页按钮,UI说导航栏能不能设置背景图片,因为那样设计挺好看的. 需求分析并制定方案 这产品和UI都提需求了,咱也不能反驳哈,所以开始调研,分析可行性方案:1.可以添加悬浮按钮.2.自定义导航栏. 添加悬浮按钮,是看起来是比较简单哈,但是感觉不太优雅,会占据页面的空间,体验也不太好.所以想了下第二种方案,自定义导航栏既可以实现

微信小程序-自定义底部导航

代码地址如下:http://www.demodashi.com/demo/14258.html 一.前期准备工作 软件环境:微信开发者工具 官方下载地址:https://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html 1.基本需求. 实现用户自定义底部导航 2.案例目录结构 二.程序实现具体步骤 1.自定义nav.wxml代码 <template name="nav"> <view class=&quo

再谈小程序自定义底部导航

小程序自定义tabBar再探索 前言 最近有很多微信开发者朋友在QQ上加我好友,忽然意识到大家对微信自定义底部导航栏需求还是挺大的,故而再次整理下底部导航栏组件开发思路.和之前的文章还是有些区别,并且底部导航栏组件增加新的特性以及一些优化开发体验的骚操作. 技术选型 与之前不同,现在我们有两种方法实现自定义底部导航栏,因为小程序在2.5.0开始支持自定义底部导航栏了戳此处看文档,所以我们现在的可选方案为: 通过HideTabBar接口hack底部导航栏 通过小程序支持配置实现底部导航栏 下面根据

微信小程序自定义导航栏(wx_custom_navigation_bar) 自定义返回键、首页键,动态设置标题,响应式组件

微信小程序自定义导航栏 navigation bar 返回键 首页 github: https://github.com/chen-yt/wx_custom_navigation_bar https://github.com/Superman2113/wx_custom_navigation_bar 代码 navbar组件 navbar.wxml <view class="navbar" style="{{'height: ' + navigationBarHeight

多选框向后台传值,多选框的回显,对多选框的各种操作

1.多选框的回显: js:$(     function(){     var checkBoxAll =$("input[name^='checkbox_']");//获取前缀为checkbox_的所有多选框对象     var checkArray=${list};//获取多选框需要回显得对应的值集合     console.info("checkArray=",checkArray);     for(var i=0;i<checkArray.lengt