微信小程序 省市区选择器实例详解(附源码下载)


Posted in Javascript onJanuary 05, 2017

微信小程序 省市区选择器:

      最近学习微信小程序,为了检验自己的学习效果,自己做一个小示例,网上搜索下类似的实例,发现这个更好,大家看下。

一、区域间手势滑动切换,标题栏高亮随之切换

思路是:拿当前的current来决定高亮样式

1.监听swiper滚动到的位置:

<swiper class="swiper-area" current="{{current}}" bindchange="currentChanged">

currentChanged: function (e) {
  // swiper滚动使得current值被动变化,用于高亮标记
    var current = e.detail.current;
    this.setData({
      current: current
    });
  }

2.布局文件中做条件判断,是否加上高亮样式,其中area-selected是目标样式,color: red;

<text class="viewpager-title">
        <text wx:if="{{current == 0}}" class="area-selected">{{provinceName}}</text>
        <text wx:else>{{provinceName}}</text>
      </text>
      <text class="viewpager-title">
        <text wx:if="{{current == 1}}" class="area-selected">{{cityName}}</text>
        <text wx:else>{{cityName}}</text>
      </text>
      <text class="viewpager-title">
        <text wx:if="{{current == 2}}" class="area-selected">{{regionName}}</text>
        <text wx:else>{{regionName}}</text>
      </text>
      <text class="viewpager-title">
        <text wx:if="{{current == 3}}" class="area-selected">{{townName}}</text>
        <text wx:else>{{townName}}</text>
      </text>

3.点击上级时为下一级赋予“请选择”字样

provinceTapped: function(e) {
...
      that.setData({
        cityName: '请选择',
        city: array,
        cityObjects: area
      });
...
}

其他级别以其类推。

效果如下:

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

Javascript 相关文章推荐
javascript编程起步(第六课)
Jan 10 Javascript
js下拉选择框与输入框联动实现添加选中值到输入框的方法
Aug 17 Javascript
JavaScript中的Array 对象(数组对象)
Jun 02 Javascript
总结在前端排序中遇到的问题
Jul 19 Javascript
jQuery表单插件ajaxForm实例详解
Jan 17 Javascript
使用vux实现上拉刷新功能遇到的坑
Feb 08 Javascript
微信小程序实现留言板
Oct 31 Javascript
在Vue中使用icon 字体图标的方法
Jun 14 Javascript
微信小程序实现手势滑动卡片效果
Aug 26 Javascript
浅谈Vue.set实际上是什么
Oct 17 Javascript
Vue 使用Props属性实现父子组件的动态传值详解
Nov 13 Javascript
taro 实现购物车逻辑的实例代码
Jun 05 Javascript
微信小程序 Template详解及简单实例
Jan 05 #Javascript
echarts3 使用总结(绘制各种图表,地图)
Jan 05 #Javascript
微信小程序 数组中的push与concat的区别
Jan 05 #Javascript
微信小程序 数组(增,删,改,查)等操作实例详解
Jan 05 #Javascript
bootstrap制作jsp页面(根据值让table显示选中)
Jan 05 #Javascript
详解PHP中pathinfo()函数导致的安全问题
Jan 05 #Javascript
jQuery电话号码验证实例
Jan 05 #Javascript
You might like
PHP 文件上传源码分析(RFC1867)
2009/10/30 PHP
php下使用curl模拟用户登陆的代码
2010/09/10 PHP
php匹配字符中链接地址的方法
2014/12/22 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
2016/03/21 PHP
详解PHP中的 input属性(隐藏 只读 限制)
2017/08/14 PHP
Thinkphp 5.0实现微信企业付款到零钱
2018/09/30 PHP
通过PHP实现获取访问用户IP
2020/05/09 PHP
javascript 兼容鼠标滚轮事件
2009/04/07 Javascript
Prototype ObjectRange对象学习
2009/07/19 Javascript
为javascript添加String.Format方法
2020/08/11 Javascript
JavaScript DOM 学习第七章 表单的扩展
2010/02/19 Javascript
JS完成代码前最好对其做5件事
2013/04/07 Javascript
Node.js中的事件驱动编程详解
2014/08/16 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
用JavaScript实现页面重定向功能的教程
2015/06/04 Javascript
JavaScript 2048 游戏实例代码(简单易懂)
2016/03/25 Javascript
jQuery unbind 删除绑定事件详解
2016/05/24 Javascript
简单实现Vue的observer和watcher
2016/12/21 Javascript
jQuery使用unlock.js插件实现滑动解锁
2017/04/04 jQuery
JS移动端/H5同时选择多张图片上传并使用canvas压缩图片
2017/06/20 Javascript
laravel5.3 vue 实现收藏夹功能实例详解
2018/01/21 Javascript
js判断在哪个浏览器打开项目的方法
2020/01/21 Javascript
[01:31:03]DOTA2完美盛典全回顾 见证十五项大奖花落谁家
2017/11/28 DOTA
[47:46]完美世界DOTA2联赛 Magma vs GXR 第三场 11.07
2020/11/10 DOTA
python 解析html之BeautifulSoup
2009/07/07 Python
在Django中输出matplotlib生成的图片方法
2018/05/24 Python
Flask框架踩坑之ajax跨域请求实现
2019/02/22 Python
Python何时应该使用Lambda函数
2019/07/02 Python
django queryset 去重 .distinct()说明
2020/05/19 Python
卸载tensorflow-cpu重装tensorflow-gpu操作
2020/06/23 Python
python 抓取知乎指定回答下视频的方法
2020/07/09 Python
函授自我鉴定
2013/11/06 职场文书
模具设计与制造专业推荐信
2014/02/16 职场文书
企业员工辞职信范文
2015/05/12 职场文书
golang 实现Location跳转方式
2021/05/02 Golang
JPA 通过Specification如何实现复杂查询
2021/11/23 Java/Android