目的是:

保证不同的Picker只创建一次,多次创建Picker系统不会自己销毁,X掉一个之后后面可能会出现下一个。

保证实现需求的情况下,优化代码,提高效率。

1.如果picker中的内容为定值

var wnddir = [{
text: "顺风",
value: 0
}, {
text: "逆风",
value: 1
}];
var wnddirPicker = new $.PopPicker();----生成picker
wnddirPicker.setData(//装载值
wnddir
);
var showWnddirPicker = document.getElementById('wnddir');
showWnddirPicker.addEventListener('tap', function(event) {//点击事件
wnddirPicker.show(function(items) {
showWnddirPicker.value = items[0].text;//展示内容
//此处可以写picker选中值所触发的其它情况
});
}, false);

2.如果多个时间框Picker

var days = $(".time");//如果一个界面多个时间框 直接控制所有时间框
days.each(function(i, day) {
day.addEventListener('tap', function() {
var _self = this;
var id = this.getAttribute('id');
if(_self.picker) {//如果picker已经存在
_self.picker.show(function(rs) {
document.getElementById(id).value = rs.text;
});
} else {//picker不存在
var optionsJson = this.getAttribute('data-options') || '{}';
var options = JSON.parse(optionsJson);
_self.picker = new $.DtPicker(options);
_self.picker.show(function(rs) {
document.getElementById(id).value = rs.text;
});
}
}, false);
});

3.Picker中内容会变化的情况

var sectnmtmPicker = new $.PopPicker();

showSectnmtmPicker.addEventListener('tap', function(event) {
rvsecttm = [];//此处是全局变量
for(var i = 0; i < __rsvcttm.length; i++) {//__rsvcttm为全局变量(就是会变化的值)此处也考虑了进程问题, 如果在rvsecttm的赋值放在外面,可能会先走赋值,后查到__rsvcttm的值,导致Picker中没有值,所以放在点击事件中
var a = {
value: __rsvcttm[i].testno,
text: __rsvcttm[i].testno
}
rvsecttm.push(a);
};
sectnmtmPicker.setData(
rvsecttm
);
sectnmtmPicker.show(function(items) {
showSectnmtmPicker.value = items[0].text;
});
}, false);

最新文章

  1. js实现倒计时及时间对象
  2. Shiro-多Realm验证
  3. Linux下安装Scim-googlepinyin输入法和设置Sublime Text中文输入
  4. hdu1998 bjfu1272奇数阶幻方构造
  5. C#中如何生成矢量图
  6. 15、SQL Server 触发器
  7. 使用ntfs的磁盘映射功能
  8. elasticsearch 搜索不支持单词的部分进行匹配
  9. delphi idhttp 实战用法(TIdhttpEx)
  10. [树结构]平衡二叉树AVL
  11. uva 11134 - Fabled Rooks(问题转换+优先队列)
  12. LDA主题模型学习笔记3.5:变分參数推导
  13. spring,hibernate配置事务
  14. 九思老客户分享:部署OA办公系统的四大意义
  15. 现代 PHP 新特性系列(三) —— Trait 概览
  16. 使用spring中4.2.6版本使用@Value取值失败,结果为${xxx}的情况
  17. Java多线程中wait语句的具体使用技巧
  18. 自动化运维工具-pdsh工具安装配置及简单使用讲解
  19. CentOS7 设置集群时间同步
  20. iOS手势的综合运用

热门文章

  1. webstorm处理代码冲突
  2. linux高频操作: host,用户管理,免密登陆,管道,文件权限,脚本,防火墙,查找
  3. 安卓开发之利用runOnUiThread在子线程更新UI
  4. ChibiOS/RT移植到STM32F407
  5. FreeRTOS 中断配置和临界段
  6. C# 中的匿名函数使用
  7. String Buffer和String Builder的区别(转)
  8. Win 2008 R2——由于管理员设置的策略,该磁盘处于脱机状态
  9. Inheritance and subclassing in Go - or its near likeness
  10. 在idea中如何将一个项目打成war包