/** * 网上留言js * * @author wangshibo * @date 2018/11/29 */ // 数据请求回调方法 function onlineMsgCallback(res) { res = JSON.parse(res); let data = res.data.pageSet, length = data.length, createTime, ulObj = $('.cardbox .list-block ul'), tycInfo = res.data.tycInfo; for (let i = 0; i < length; i++) { createTime = data[i].fbsj; if (createTime) { createTime = createTime.substring(0, createTime.lastIndexOf('-') + 3); } var title = commonUtils.markedRed(data[i].title,(tycInfo&&tycInfo.length>0) ? tycInfo : online_msg.searchContent); if (data[i].unitname.indexOf('黑龙江') >= 0 || data[i].unitname.indexOf('内蒙古') >= 0) { data[i].unitname = data[i].unitname.substr(0, 3); } else { data[i].unitname = data[i].unitname.substr(0, 2); } ulObj.append( "
  • " + `` + "
    " + "
    " + title + "
    " + "
    " + "

    " + data[i].unitname + "

    " + `

    ${createTime}

    ` + "
    " + "
  • "); } } // 获取用户id function loadToMsgForm() { var userid = ""; request({ type: "get", url: "zbhz/getUserid", async: false }, function (response) { results = JSON.parse(response); userid = results.data; if (results.code == 1) { window.location.href = './../../pages/onlinemsg/msgform.html'; } }); } let online_msg = { // 下拉刷新实体 pushObj: undefined, // 初始地域信息 areacode: '111000000', //检索内容 searchContent : '' }; // 网上留言方法类 class OnlineMsg { // 列表过滤条件 static sortList(obj) { if(obj){ if($(obj).find('.mc_u').length > 0){ $(obj).find('.mc_u').removeClass('mc_u').addClass('mc_d'); } else { $(obj).find('.mc_d').removeClass('mc_d').addClass('mc_u'); } } this.reRefresh(); } // 刷新页面 static reRefresh() { let release = $('.morechoose .sort-btn'); online_msg.searchContent = $('#search').val(); online_msg.pushObj._reinit({ reqparms: { nr: Base64.encode($('#search').val()), sort: release[0].dataset.sort, sortid: release.find('.mc_d').length > 0 ? "0":"1", zxjg: online_msg.areacode } }); } // 文本搜索功能 static searchInput() { let inputText = $('#search').val(); // if (!inputText) { // return; // } this.reRefresh(); } // 文本框清空功能 static clearInput() { $('#search').val(''); this.reRefresh(); } } // 网上留言列表初始化 $(document).on('pageInit', '#online-msg', function () { // 回退绑定 $(".go2back").on("click", function (e) { let rooter = new FormPage().queryString('rooter'); if (rooter === 'ios') { // backToMain(); window.webkit.messageHandlers.backToMain.postMessage({}); } else if (rooter === 'android') { if (needRealName()) { window.android.backToMain2(); } else { window.android.backToMain(); } } else { $.router.back(); // window.location.href = '../consultation.html'; } }); // 列表排序功能 $('.morechoose .sort-btn').on('click', function () { OnlineMsg.sortList(this); }); // 文本搜索功能绑定 let searchbar = $('.searchbar'); searchbar.on('click', '.iclose', function () { OnlineMsg.clearInput(); emptyMind(); }); searchbar.on('click', '.searchbar-cancel', function () { OnlineMsg.searchInput(); }); // 地区定位,并获取当前地域数据 if (!online_msg.pushObj) { BMapTools.areaLocation(null, function (localAddress = '北京') { $('#online-msg .barright_icon').html(`${localAddress}`); // 获取地域对应的行政区划编码 let area_code = ProvincesJsonTools.getProvinceId(localAddress) || online_msg.areacode; online_msg.areacode = area_code; online_msg.searchContent = ''; $("#search").val(online_msg.searchContent); // 加载列表 let release = $('.morechoose .sort-btn'); online_msg.pushObj = getPullRefresh({ loadUrl: personal_util.urls.onlineMsgList,//异步请求地址 reqparms: { nr: Base64.encode($('#search').val()), sort: release[0].dataset.sort, sortid: release.find('.mc_d').length > 0 ? "0":"1", zxjg: area_code },//请求参数-业务请求参数 callback: "onlineMsgCallback",//数据请求回调方法 pullcallback: function pullstart() { online_msg.pushObj._pullStart();//刷新内容更新/*必须使用刷新对象调用*/ },//无线加载刷新触发的方法 downcallback: function downback() { online_msg.pushObj._downinit();//下拉刷新回调方法/*必须使用刷新对象调用*/ }, itemsContext: '.cardbox .list-block ul',//数据加载对象 listCount: 8//每次请求数量 }); //无限加载对象初始化 online_msg.pushObj._init(); }); } else { $("#search").val(online_msg.searchContent); } $("#search").on('keypress', function (e) { var keycode = e.keyCode; var searchName = $(this).val(); //keycode是键码,13也是电脑物理键盘的 enter if (keycode == '13') { e.preventDefault(); closeMind(); OnlineMsg.reRefresh();//刷新列表 } }); //搜索输入框输入事件 $('#search').on('input', function () { showMind($(this).val()); }); //搜索框失去焦点 $('#search').on("blur", function(){ setTimeout(function() { $('.searchlaw').hide(); }, 100); }); //搜索框获得焦点 $('#search').on('focus', function(){ var searchValue = $('#search').val(); if(searchValue && $('.searchlaw ul li').length >=1){ $('.searchlaw').show(); } else if(searchValue){ showMind(searchValue); } }); }); //地域选择popup打开时事件 $(document).on('open', '#area-selector', function () { // 当前定位地域点击事件 $('#choose_city_a').on('click', function () { chooseArea(this); }); // 加载行政区划列表 new AreaBox("#choose_city_location", "choose_city_a", "#area-selector .area-list", "chooseArea").init(); }); // 地域选择popup关闭时回调事件 $(document).on('closed', '#area-selector', function () { OnlineMsg.reRefresh(); }); function chooseArea(obj) { obj = $(obj); // 当前选择区域名称改变 //$("#area-selector .area-current").html(obj.html()); // 存储当前选择区域行政区划编码 area_code = obj.attr("city"); online_msg.areacode = area_code; // 修改当前定位区域 let areaName = obj.find('span').text(); $('#online-msg .barright_icon').html(`${areaName}`); // 关闭popup $.closeModal('.popup-area'); } //显示联想查询 function showMind(searchContent){ if(!searchContent || searchContent.replace(/\s/," ").length == 0) { emptyMind(); return false; } request({ type: 'post', url: personal_util.urls.onlineMsgList, data : { nr: Base64.encode($('#search').val()), sort: "0", sortid: $('.sort-btn.cur').find('.mc_d').length > 0 ? "0":"1", zxjg: online_msg.areacode, pageIndex:"1", listCount:"5", } }, function(response) { var resulst = JSON.parse(response); var list = resulst.data.pageSet; if(list && list.length > 0){ var html = ''; for(var i=0;i' + '
    ' + list[i].title + '
    ' + ''; } if(html){ $('.searchlaw ul').empty().append(html); $('.searchlaw').show(); } else { $('.searchlaw').hide(); } } }) } //关闭联想框 function closeMind (){ $('.searchlaw').hide(); } //清空联想框 function emptyMind (){ $('.searchlaw ul').empty(); $('.searchlaw').hide(); } //点击联想查询内容 function chooseSearch(searchContent){ $('#search').val(searchContent); OnlineMsg.reRefresh();//刷新列表 emptyMind(); }