equipManage_ybq.html 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  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. var equipicon = '';
  83. if(dat[i].is_online == 0) {
  84. equipicon = '../images/red.png';
  85. } else if(dat[i].is_online == 1) {
  86. equipicon = '../images/green.png';
  87. }
  88. html += '<li data-id="' + dat[i].equip_id + '"><div class="equipItem"><div class="equipItem_top">' +
  89. '<div class="equipTitle"><img class="equipIdIcon" src="../images/IDicon.png" width="22"/>' +
  90. '<span class="">' + dat[i].equip_id + '</span><img class="equipType" src="' + equipicon + '" width="26"/>' +
  91. '</div><div class="equipItem_line"></div></div><div class="equipItem_bottom">' +
  92. '<div class="equipMsg"><label>设备名称</label><div class="equipVal equipName">' + equip_name + '</div></div>' +
  93. '<div class="equipMsg"><label>上报时间</label><div class="equipVal">' + dat[i].upl_time + '</div>' +
  94. '</div></div></div></li>';
  95. }
  96. $('#dataList').append(html);
  97. }
  98. /*联网加载列表数据*/
  99. function getListDataFromNet(pageNum, pageSize, successCallback, errorCallback) {
  100. console.log(pageNum)
  101. $.ajax({
  102. type: 'POST',
  103. url: 'http://120.27.222.26/app_equipmanage',
  104. timeout: 10000, //超时时间设置,单位毫秒
  105. data: {
  106. 'etype': 'ybq',
  107. 'page': pageNum,
  108. 'filter': mui('#searchInp')[0].value,
  109. },
  110. dataType: 'json',
  111. success: function(data) {
  112. successCallback(data.dat, data.nums);
  113. },
  114. error: function() {
  115. errorCallback();
  116. }
  117. });
  118. }
  119. var markingid = '' //用于记录点击的当前id 以便刷新
  120. window.addEventListener('refresh', function(event) { //如果详情页面更改数据 才页面刷新
  121. $('#dataList li').each(function() {
  122. if(markingid == $(this).data('id')) {
  123. $(this).find('.equipName').html(event.detail.markingEquipName);
  124. }
  125. })
  126. })
  127. //进入详情页面
  128. mui('#dataList').on('tap', 'li', function() {
  129. var imei = this.getAttribute('data-id');
  130. markingid = imei;
  131. mui.openWindow({
  132. url: 'equipManage_ybq_detail.html',
  133. id: 'equipManage_ybq_detail',
  134. extras: {
  135. 'equipId': imei
  136. },
  137. })
  138. })
  139. //搜索操作
  140. $("#searchInp").on('keypress', function(e) {
  141. var keycode = e.keyCode;
  142. if(keycode == '13') {
  143. e.preventDefault();
  144. //请求搜索接口
  145. if(mui('#searchInp')[0].value) {
  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. getListData({
  158. num: 1,
  159. size: 10
  160. })
  161. } else {
  162. mui.toast("请输入设备ID");
  163. }
  164. })
  165. </script>
  166. </body>
  167. </html>