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

Posted 吃橘子的小蜗牛

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小程序自定义多选按钮 给后台传值方法相关的知识,希望对你有一定的参考价值。

小程序自定义多选按钮

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;
}

3、//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
        })
    },    
})

 

这样一个简单的 多选按钮就做出来了
效果图如下 样式可以自己修改

以上是关于小程序自定义多选按钮 给后台传值方法的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序父子组件通信

vue 后台管理页面 筛选组件化

UIWebview交互之自定义传值跳转

UIWebview交互之自定义传值跳转

UIWebview交互之自定义传值跳转

基于Laravel+Layui的小程序后台管理系统