JQuery-weui city-picker动态加载数据


  • JQuery-weui city-picker 加载三级菜单

    页面代码:

<html><head><meta charset="utf-8"/><script type="text/javascript" src="jquery.1.7.2.min.js"></script><script type="text/javascript" src="jquery-weui.js"></script><script type="text/javascript" src="city-picker.js"></script><link rel="stylesheet" href="jquery-weui.css"><link rel="stylesheet" href="weui3.css"><script type="text/javascript">var cityArr;function init(){//第一次初始化,这里直接写静态的(实际这个数组可以通过ajax获取)cityArr = [{"name":"北京","code":"100000"},{"name":"河北省","code":"200000"},{"name":"河男省","code":"300000"}];cityArr[0].sub=[{"name":"北京市","code":"100100"}];cityArr[1].sub=[{"name":"承德市","code":"200100"},{"name":"邢台市","code":"200200"}];cityArr[2].sub=[{"name":"承市","code":"200200"},{"name":"邢台市","code":"200210"}];cityArr[0].sub[0].sub=[{"name":"朝阳区","code":"100101"},{"name":"朝阳2","code":"100102"},{"name":"朝阳3","code":"100103"}];cityArr[1].sub[0].sub=[{"name":"双桥区","code":"200101"}];$(".city-picker").val("北京 市辖区 朝阳区");$(".city-picker").attr("data-values","100000,100100,100101");$(".city-picker").cityPicker({onOpen:function(){$(".mask").show()},onClose:function(){$(".mask").hide()},title: "请选择地区",list:cityArr});}function search(){//第二次加载,这里直接写静态的(实际这个数组可以通过ajax获取)cityArr = [{"name":"广东省","code":"600000"}];cityArr[0].sub=[{"name":"广州市","code":"600100"}];             cityArr[0].sub[0].sub=[{"name":"天河区","code":"600101"},{"name":"白云区","code":"600102"},{"name":"黄埔","code":"600103"}];$(".city-picker").val("广东省 广州市 天河区");$(".city-picker").attr("data-values","600000,600100,600101");$(".city-picker").cityPicker({list:cityArr,reload:true,initVal:"广东省 广州市 天河区",initCode:"600000,600100,600101"});}</script></head><body onload="init();"><div><select onchange="search();"><option value="1">1</option><option value="2">2</option></select></div><div id="city-picker"><input type="text"  placeholder="请选择地区" class="city-picker"></div><!-- 中间内容结束 --><div class='mask'></div><script>$(".city-picker").cityPicker({onOpen:function(){$(".mask").show()},onClose:function(){$(".mask").hide()},title: "请选择地区"});</script></body>
</html>
  1. 查资料
    参考文章 https://blog.csdn.net/xjun0812/article/details/80663424中的代码
/*js部分,myPicker是设备号input的ID*/
$('#myPicker').change(function () {/*选择设备号后,根据当前设备号设置不同的摄像头选项,具体判断逻辑根据具体的项目而定*/var val = $("#myPicker").val();if (val === "*******352") {$("#box").empty();$("#box").html("<input type='text' id='camera' value='前置摄像头'/>");$("#camera").picker({title: "请选择摄像头",cols: [{textAlign: 'center',values: ['前置摄像头']}]});} else {$("#box").empty();$("#box").html("<input type='text' id='camera' value='前置摄像头'/>");$("#camera").picker({title: "请选择摄像头",cols: [{textAlign: 'center',values: ['前置摄像头', '后置摄像头', '前+后摄像头']}]});}
});

3.分析city-picker.js源码,增加参数:list-数据源,reload-是否重新加载,initVal-初始化的值,initCode-初始化的value。

  1. 增加参数
 defaults = $.fn.cityPicker.prototype.defaults = {showDistrict: true, //是否显示区list:[], //数据源reload:false, //是否重新加载initVal:"", //初始化的值initCode:"" //初始化的value                };

2.增加方法给数据源赋值

//将raw的值干掉
var raw = [];
//增加方法给raw赋值
var setList = function(data){raw = data;
}
//city-picker调研的时候给raw赋值
$.fn.cityPicker = function(params) {params = $.extend({}, defaults, params);return this.each(function() {var self = this;//根据参数给raw赋值if(params.list != null && params.list.length>0){setList(params.list);}//后续代码就不截了...

3.发现jquery-weui的city-picker是在JQuery weui picker的基础上开发的,修改调用方式

if(params.reload){$("#city-picker").empty();$("#city-picker").html("<input type='text'  placeholder='请选择地区' class='city-picker'>");if(params.initVal != null && params.initVal != ""){$(".city-picker").val(params.initVal);$(".city-picker").attr("data-values",params.initCode);}$(".city-picker").picker(p);
}else{$(this).picker(p);
}

JQuery-weui city-picker动态加载数据相关推荐

  1. jqweui的picker动态加载数据

    大家好,我是烤鸭: jqweui的picker动态加载数据 jqweui是jquery对weui的拓展开发,picker就是其中的一个拓展组件, 1.    先附上官网显示地址和代码: http:// ...

  2. ajax 技术动态加载数据,jQuery结合Ajax实现动态加载数据【原创】

    原先的页面如下: 要实现的效果图: 要实现的效果,就是点击"查看更多"按钮,动态加载五条数据.而点击"查看所有"时数据全部加载. 主要的思路: 1.点击按钮,发 ...

  3. ASP.NET MVC动态加载数据

    ASP.NET MVC动态加载数据,一般的做法是使用$.each方法来循环产生tabel: 你可以在html时先写下非动态的部分: <table><tr><th styl ...

  4. 百度echart柱图、折线图、饼图、Map类型等类似视图的动态加载数据

    这几天接触的一个项目需要使用到百度的echart,所以简单查找并实验了几款比较简单且适用性较广的例子,做了几个简单的Demo,一来是对echart有所了解,二来也是记录一下,方便以后进一步的优化. 首 ...

  5. 利用 JQuery的load函数动态加载页面

    利用JQuery的load函数动态加载页面 JQuery有好多Ajax函数,其中load是用来动态加载一个页面的内容到指定的dom元素上. 我们来做个例子: 做一个上下(左右)结构的页面,其中下左部分 ...

  6. iscroll动态加载数据完美解决方案

    iscroll动态加载数据完美解决方案 参考文章: (1)iscroll动态加载数据完美解决方案 (2)https://www.cnblogs.com/ShoneH/p/5253758.html (3 ...

  7. 如何在 InfoPath 2003 表单中动态加载数据

    转自微软:http://support.microsoft.com/kb/896451/zh-cn 概要 简介 更多信息 创建新的虚拟目录 设计 Microsoft Office InfoPath 2 ...

  8. python爬取js加载的数据_JS动态加载数据不会爬?老司机教你两个方法爬取想要的数据...

    学习Python的人绝大部分都是在用Python做爬虫,毕竟对于爬虫而言Python是不二选. 但是一般简单的静态页面网站还是很好爬取的,对于很多动态加载的网站就不知道怎么办了,今天小编就给大家介绍两 ...

  9. echarts java动态数据_[ASP.net教程]ECharts Java 动态加载数据,echartsjava

    [ASP.net教程]ECharts Java 动态加载数据,echartsjava 0 2015-12-18 00:00:05 1.前台jsp页面html PUBLIC "-//W3C// ...

最新文章

  1. 聊聊nginx报错499问题
  2. mysql 查询商品列表 显示tag_javascript - MYSQL——怎么一个sql语句查询出用户和用户商品的列表啊...
  3. POJ 1170 Shoping Offers(IOI 95)
  4. 项目: 打字母游戏【c++/c】
  5. wxWidgets:wxImage类用法
  6. Qt Designer的UI文件格式
  7. 计算机二级办公软件aoa 百度云,计算机二级办公 考生注意事项(二级AOA)
  8. 【TSP】基于matlab模拟退火算法求解旅行商问题【含Matlab源码 136期】
  9. NumberFormat类
  10. Qt手动设置Kits套件
  11. 概率论的学习和整理--番外4:学习期望之前,先学习平均数(包括算术平均数,几何平均数,调和平均数等),众数,中位数等概念差别。
  12. python图像处理之一 - Pillow的基本用法
  13. Verifying dml pool data
  14. 什么样的商业计划书才是投资人喜欢的
  15. 如何用 Kaldi 训练一个 DNN 声学模型
  16. 歪歪地区服务器维护,多玩歪歪语音旗下新行业挂yy服务器简要说明
  17. 问卷星问卷数据怎么快速导入SPSSAU?
  18. 6篇论文入选NIPS 2018,这位中国小哥的开挂人生
  19. 题解:《你的飞碟在这儿》、《哥德巴赫猜想》
  20. python pdf和图片互转

热门文章

  1. HTML5 input()标签
  2. 023_SSS_Neural 3D Video Synthesis from Multi-view Video(CVPR2022)
  3. 百度云音视频直播服务(LSS)的使用流程
  4. day1(Python爬虫:天气
  5. 路由器里面的DHCP是什么功能?
  6. 服务器被抓“肉鸡”后怎么办?怎么避免被抓“肉鸡“
  7. Markdown 和 LaTeX 写作规范(持续更新,建议收藏)
  8. Win11右下角图标折叠不见了怎么办?
  9. kubesphere_越南 ZaloPay 使用 KubeSphere 构建核心商户平台支持亿级用户
  10. Calendar类(日历)