equipManage_qxz.html 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="UTF-8">
  5. <title></title>
  6. <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  7. <link rel="stylesheet" href="../css/mescroll.min.css">
  8. <link rel="stylesheet" href="../css/mui.min.css" />
  9. <link rel="stylesheet" href="../css/common.css" />
  10. <link rel="stylesheet" type="text/css" href="../css/equipList.css"/>
  11. </head>
  12. <body>
  13. <header class="mui-bar mui-bar-nav">
  14. <a class="mui-action-back mui-icon mui-icon-left-nav mui-pull-left"></a>
  15. <h1 class="mui-title">环境监测</h1>
  16. </header>
  17. <div class="mui-content">
  18. <div class="searchBox">
  19. <div class="searchControl">
  20. <div class="mui-input-row mui-search">
  21. <input type="search" id="searchInp" class="mui-input-clear" placeholder="请输入设备ID">
  22. </div>
  23. <button id="searchBtn" class="searchBtn">搜索</button>
  24. </div>
  25. </div>
  26. <div id="scrollPlace" class="mescroll">
  27. <!--id可以改,而"mescroll"的class不能删-->
  28. <ul id="dataList">
  29. </ul>
  30. </div>
  31. <script src="../js/jquery-2.1.0.js"></script>
  32. <script src="../js/mescroll.min.js" charset="utf-8"></script>
  33. <script src="../js/mui.min.js"></script>
  34. <script type="text/javascript">
  35. mui.init()
  36. //创建MeScroll对象,内部已默认开启下拉刷新,自动执行up.callback,重置列表数据;
  37. var mescroll = new MeScroll("scrollPlace", {
  38. up: {
  39. callback: getListData, //上拉回调,此处可简写; 相当于 callback: function (page) { getListData(page); }
  40. isBounce: false, //此处禁止ios回弹,解析(务必认真阅读,特别是最后一点): http://www.mescroll.com/qa.html#q10
  41. clearEmptyId: "dataList", //1.下拉刷新时会自动先清空此列表,再加入数据; 2.无任何数据时会在此列表自动提示空
  42. toTop: { //配置回到顶部按钮
  43. src: "../images/totop.png", //默认滚动到1000px显示,可配置offset修改
  44. offset: 700
  45. },
  46. empty: {
  47. //列表第一页无任何数据时,显示的空提示布局; 需配置warpId才显示
  48. warpId: "dataList", //父布局的id (1.3.5版本支持传入dom元素)
  49. icon: "../images/listNull.png", //图标,默认null,支持网络图
  50. tip: "暂无相关数据~" //提示
  51. },
  52. htmlNodata: '<p class="upwarp-nodata">-- 没有更多内容了 --</p>',
  53. noMoreSize: 5, //如果列表已无数据,可设置列表的总数量要大于5才显示无更多数据;
  54. lazyLoad: {
  55. use: true // 是否开启懒加载,默认false
  56. }
  57. }
  58. });
  59. /*联网加载列表数据 page = {num:1, size:10}; num:当前页 从1开始, size:每页数据条数 */
  60. function getListData(page) {
  61. //联网加载数据
  62. getListDataFromNet(page.num, page.size, function(curPageData, totalSize) {
  63. //联网成功的回调,隐藏下拉刷新和上拉加载的状态;
  64. //mescroll会根据传的参数,自动判断列表如果无任何数据,则提示空;列表无下一页数据,则提示无更多数据;
  65. //方法二(推荐): 后台接口有返回列表的总数据量 totalSize
  66. mescroll.endBySize(curPageData.length, totalSize); //必传参数(当前页的数据个数, 总数据量)
  67. //设置列表数据,因为配置了emptyClearId,第一页会清空dataList的数据,所以setListData应该写在最后;
  68. setListData(curPageData);
  69. }, function() {
  70. //联网失败的回调,隐藏下拉刷新和上拉加载的状态;
  71. mescroll.endErr();
  72. mui.toast('数据请求失败');
  73. });
  74. }
  75. /*设置列表数据*/
  76. function setListData(curPageData) {
  77. var html = '';
  78. // var listDom=document.getElementById("dataList");
  79. var dat = curPageData;
  80. for(var i = 0; i < dat.length; i++) {
  81. var equip_name = dat[i].equip_name || '无';
  82. html += '<li data-id="' + dat[i].equip_id + '"><div class="equipItem"><div class="equipItem_top">' +
  83. '<div class="equipTitle"><img class="equipIdIcon" src="../images/IDicon.png" width="22"/>' +
  84. '<span class="">' + dat[i].equip_id + '</span>' +
  85. '</div><div class="equipItem_line"></div></div><div class="equipItem_bottom">' +
  86. '<div class="equipMsg"><label>设备名称</label><div class="equipVal equipName">' + equip_name + '</div></div>' +
  87. '<div class="equipMsg"><label>上报时间</label><div class="equipVal">' + dat[i].upl_time + '</div>' +
  88. '</div></div></div></li>';
  89. }
  90. $('#dataList').append(html);
  91. }
  92. /*联网加载列表数据*/
  93. function getListDataFromNet(pageNum, pageSize, successCallback, errorCallback) {
  94. $.ajax({
  95. type: 'POST',
  96. url: 'http://120.27.222.26/app_equipmanage',
  97. timeout: 10000, //超时时间设置,单位毫秒
  98. data: {
  99. 'etype': 'qxz',
  100. 'page': pageNum,
  101. 'filter': mui('#searchInp')[0].value,
  102. },
  103. dataType: 'json',
  104. success: function(data) {
  105. successCallback(data.dat, data.nums);
  106. },
  107. error: function() {
  108. errorCallback();
  109. }
  110. });
  111. }
  112. var markingid = '' //用于记录点击的当前id 以便刷新
  113. window.addEventListener('refresh', function(event) { //如果详情页面更改数据 才页面刷新
  114. $('#dataList li').each(function() {
  115. if(markingid == $(this).data('id')) {
  116. $(this).find('.equipName').html(event.detail.markingEquipName);
  117. }
  118. })
  119. })
  120. //进入详情页面
  121. mui('#dataList').on('tap', 'li', function() {
  122. var imei = this.getAttribute('data-id');
  123. var equipName = $(this).find('.equipName').html();
  124. if(equipName == '无'){
  125. equipName = '设备'+imei;
  126. }
  127. console.log(equipName)
  128. markingid = imei;
  129. mui.openWindow({
  130. url: 'equipManage_qxz_detail.html',
  131. id: 'equipManage_qxz_detail',
  132. extras: {
  133. 'equipId': imei,
  134. 'equipName':equipName
  135. },
  136. })
  137. })
  138. //搜索操作
  139. $("#searchInp").on('keypress', function(e) {
  140. var keycode = e.keyCode;
  141. if(keycode == '13') {
  142. e.preventDefault();
  143. //请求搜索接口
  144. if(mui('#searchInp')[0].value) {
  145. $('#dataList').html('');
  146. getListData({
  147. num: 1,
  148. size: 10
  149. })
  150. } else {
  151. mui.toast("请输入设备ID");
  152. }
  153. }
  154. })
  155. document.getElementById('searchBtn').addEventListener('tap', function() {
  156. if(mui('#searchInp')[0].value) {
  157. $('#dataList').html('');
  158. getListData({
  159. num: 1,
  160. size: 10
  161. })
  162. } else {
  163. mui.toast("请输入设备ID");
  164. }
  165. })
  166. </script>
  167. </body>
  168. </html>