一般来说的话,总有点需要下拉并且能够搜索选择的需求。

首先wxml

<!-- 下拉菜单   --><view class='menu-po'><!-- 请选择 --><view class='menu'><view class='menu-list'><view class="{{item.key==menuNums&&openPicker?'menu-nav2':'menu-nav'}}" wx:for="{{ msgList }}" wx:for-index="idx" data-key='{{item.key}}' wx:key="key" data-hi="{{ idx }}" data-name='{{item.name}}' bindtap="menuClick"><text class='menu-text'>{{ item.name }}</text><image class='menu-image' src='/pages/img/pull.png'></image></view></view></view><!-- 列表栏 --><view class='menu-if'><!-- 区域 --><view class="meun-txt over-auto" hidden='{{ meunShow[0].isShows ? true : false }}'><scroll-view scroll-y="true" style="height: 446rpx"><text wx:for="{{ sousuoList }}" data-id="{{item.id}}" class='meun-city-txt meun-city-txt-price' bindtap='souSearch' data-name='{{item.name}}'>{{ item.name }}</text></scroll-view></view></view></view>

其次是wxss

.menu-po {position: relative;left: 0;top: 0;right: 0;bottom: 0;width: 25%;margin-left: 5%;display: inline-block;margin-top: 10px;margin-bottom: 10px;
}.menu-list {display: flex;justify-content: space-between;
}.menu-nav {display: flex;align-items: center;justify-content: center;
}.menu-nav2 {display: flex;align-items: center;justify-content: center;
}.menu-nav2 image {width: 24rpx;height: 15rpx;
}.menu-nav2 text {font-size: 14px;
}.menu-nav image {width: 24rpx;height: 15rpx;
}.menu-nav text {color: #696969;font-size: 14px;
}.shadow {width: 100%;height: 100%;background-color: rgba(0, 0, 0, 0.3);z-index: 1;position: absolute;top: 210rpx;
}.menu-if {background-color: #fff;box-sizing: border-box;position: absolute;z-index: 9;margin-left: -15px;width: 100%;
}.swiper-item {background: #fff;width: 100%;height: 600rpx;display: none;position: absolute;top: 100rpx;z-index: 333333;left: 0;animation: displays 1s;
}.meun-txt {height: auto;color: #696969;
}.menu-text-list {position: relative;left: 0;top: 0;right: 0;bottom: 0;
}.menu-text-list-left {width: 100%;background-color: #fff;box-sizing: border-box;padding-left: 35rpx;
}/* text样式 */.meun-city-txt {display: block;border-bottom: 1rpx solid #e9e9e9;width: 100%;padding: 25rpx 0;font-size: 14px;
}.meun-city-txt-price {display: flex;justify-content: center;
}.menu-text-list-rig {width: 50%;position: absolute;top: 0;right: 0;background-color: #f9f9f9;z-index: 10;box-sizing: border-box;padding-left: 35rpx;
}

最后是js文件

Page({/*** 页面的初始数据*/data: {msgList: [{key: 1,name: '请选择'}],// 判断导航栏列表是否显示meunShow: [{isShows: true}],sousuoList: [{id: 1,name: '新房'}, {id: 2,name: '二手房'}, {id: 3,name: '写字楼'}, {id: 4,name: '商铺'}, {id: 5,name: '出租'}],},souSearch: function (e) {var that = this;var openPicker = this.data.openPicker;var house_name = e.target.dataset.name;var msgList = that.data.msgList;this.setData({openPicker: !openPicker,})for (var i = 0; i < msgList.length; i++) {var keys = msgList[i].key;if (keys == 1) {msgList[i].name = house_name;that.setData({msgList: msgList,house_name: house_name})}}var menuNum = that.data.menuNum;var meunShow = this.data.meunShow;var menuSrc = "meunShow[" + menuNum + "].isShows";// console.log('menuNum:' + menuNum);for (var n = 0; n < meunShow.length; n++) {// 拼接 ,使我们可以获取到menuShow里面每一个isSHowsvar menuSrcs = meunShow[n].isShows;// console.log('menuSrcs:' + menuSrcs);// 解决重复点击不能隐藏的问题if (n != menuNum) {this.setData({menuSrcs: true});};};// 给当前点击的去反data中设置的meunShow,使之显示, 只写此处只会显示不能隐藏this.setData({[menuSrc]: !this.data.meunShow[menuNum].isShows});},menuClick: function (e) {// 获取通过wxml  data-hi="{{ idx }}" 传过来的索引var that = this;var menuNum = e.currentTarget.dataset.hi;that.setData({menuNum: menuNum})var name = e.currentTarget.dataset.name;if (name == that.data.name) {// console.log('==');that.setData({openPicker: !this.data.openPicker,})} else {// console.log('!=');that.setData({openPicker: true,})}that.setData({name: name})// console.log(name + ',' + menuNum);// 拼接 ,使我们可以获取到menuShow里面每一个isSHowsvar menuSrc = "meunShow[" + menuNum + "].isShows";// console.log('picker:' + this.data.openPicker);this.setData({needAnimation: true,menuNums: menuNum + 1});// 循环data中设置的meunShowfor (var n = 0; n < this.data.meunShow.length; n++) {// 拼接 ,使我们可以获取到menuShow里面每一个isSHowsvar menuSrcs = "meunShow[" + n + "].isShows";// 解决重复点击不能隐藏的问题if (n != menuNum) {// 初始化,每次点击时先全部隐藏,但是重复点击不会隐藏this.setData({[menuSrcs]: true});};};// 给当前点击的去反data中设置的meunShow,使之显示, 只写此处只会显示不能隐藏this.setData({[menuSrc]: !this.data.meunShow[e.currentTarget.dataset.hi].isShows});},})

这就是下拉选择框的全部代码了。

微信小程序下拉选择框相关推荐

  1. 小程序——下拉选择框组件

    一.效果 二.说明 最近在开发微信小程序,但是用的lin-ui和@vant 都没有下拉选择框组件.在网上搜索一番后,发现了一个挺简单且很好用的下拉框组件. 链接在这里:https://blog.csd ...

  2. 微信小程序下拉选项框

    效果图 test.js /*** 页面的初始数据*/data: {shows: false, //控制下拉列表的显示隐藏,false隐藏.true显示selectDatas: ['消费账户', '平台 ...

  3. 微信小程序下拉框插件_微信小程序下拉框组件使用方法详解

    本文实例为大家分享了微信小程序下拉框组件的使用方法,供大家参考,具体内容如下 适用场景 1.省市三级联动 2.出生日期选择 3.性别选择 4.一般性的下拉选择等 一.省市三级联动使用 注意mode = ...

  4. 下拉多选框 微信小程序_微信小程序下拉框组件使用方法详解

    本文实例为大家分享了微信小程序下拉框组件的使用方法,供大家参考,具体内容如下 适用场景 1.省市三级联动 2.出生日期选择 3.性别选择 4.一般性的下拉选择等 一.省市三级联动使用 注意mode = ...

  5. 下拉多选框 微信小程序_微信小程序下拉框功能的实例代码

    微信小程序组件里没有下拉框,正好要用到,记下来以后参考 wxml代码 选择接收班级 {{grade_name}} {{item}} wxss代码 /* 顶部 */ .top{ width: 100vw ...

  6. 下拉多选框 微信小程序_微信小程序下拉框组件使用方法

    这篇文章主要为大家详细介绍了微信小程序下拉框组件的使用方法,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下.如有不足之处,欢迎批评指正.[推荐教程:小程序开发教程] 适用场景 ...

  7. html下拉刷新原理,微信小程序 下拉刷新及上拉加载原理解析

    这篇文章主要介绍了微信小程序 下拉刷新及上拉加载实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.下拉刷新的概念及应用场景. 概念: 下拉 ...

  8. 微信小程序--下拉刷新

    实现微信小程序下拉刷新 步骤一 json文件配置(若需要全局配置,则在app.json 反正就配置本界面得到json即可) {"enablePullDownRefresh": tr ...

  9. android 自定义Scrollview实现淘宝二层楼效果新版微信小程序下拉效果

    android 自定义Scrollview实现淘宝二层楼效果新版微信小程序下拉效果 由于最近一段时间真的是太忙了,没有顾上即使更新博客,还请粉丝们见谅,最近要实现这样一个效果,这个效果跟淘宝二层楼和新 ...

最新文章

  1. Liferay Portal学习笔记-coldTear
  2. dbv mysql_MariaDB与MySQL对比 --- 对分布式事务的支持
  3. SAP QM 特性导出及定性定量
  4. 阿里云服务器地域的选择
  5. 【python】使用python绘制地图时手动添加比例尺
  6. bug引发的惨案,拼多多100元话费只需4毛钱,损失上千亿……
  7. docker 部署nginx 挂载nginx.conf配置文件
  8. 注意!你的论文可能存在问题,论文引用失范的七大表现
  9. 数据库连接池的管理思想
  10. Java面向对象程序设计综合练习2(编程题)
  11. 写给那些进步缓慢却全然不知的IT人
  12. github of gist完全使用指南
  13. GBase 8s灾备集群HAC介绍
  14. sklearn之svm-葡萄酒质量预测(10)
  15. seo优化需要c语言吗,SEO优化人员需要优化哪些代码?
  16. koa框架(一) 认识koa
  17. NSA提供有关如何降低位置跟踪风险的建议
  18. HTML5期末大作业:魔域私服网站设计——魔域私服游戏(1页) HTML+CSS+JavaScript 学生DW网页设计作业成品 html实训大作业
  19. 【IoT】导电硅胶按键焊盘处理技术指南
  20. 水电站10kV厂用电保护装置改造

热门文章

  1. python小黄猫--经纬度转换为坐标系x,y
  2. 分享 :如何成为一个合格的数据架构师?
  3. 【vue】sideMenu 不显示 meta失效解决方法
  4. Qt编写项目作品26-一维码二维码解析及生成
  5. 程序员上班摸鱼时都会浏览哪些网站?年轻人耗子尾汁
  6. 跨域解决方式——JSONP,CORS
  7. 移动端H5常见问题以及解决方案
  8. 上证指数的预测与投资策略,基于 Python 的量化投资尝试
  9. 掌握这些,就能成为嵌入式开发多面手!
  10. js对象的getter和setter