/* * 版 本 Learun-ADMS-Ultimate V7.0.0 数字化智慧校园(http://www.learun.cn) * Copyright (c) 2013-2018 北京泉江科技有限公司 * 创建人:陈彬彬 * 日 期:2017.03.22 * 描 述:learunISearch 输入搜索框,支持input输入框,数据异步加载,本地查询 */ (function ($, learun) { "use strict"; $.lrcustmerquery = { init: function ($self) { var dfop = $self[0]._lrcustmerquery.dfop; $self.parent().append('
'); }, bind: function ($self) { $self.on('input propertychange', function () { var $this = $(this); $.learunisearch.triggerSearch($self); }); }, triggerSearch: function ($self) { var dfop = $self[0]._lrcustmerquery.dfop; var $showPanel = $('#learunisearch_' + dfop.id); $showPanel.parent().hide(); var _value = $self.val(); if (_value) { if (!dfop._isload) { dfop._isSearchneed = true; } else { dfop._first = true; dfop._value = _value; dfop._begin = 0; dfop._end = 100 > dfop.data.length ? dfop.data.length : 100; if (dfop._isSearched) { dfop._isSearched = false; setTimeout(function () { $.learunisearch.search($self); }); } } } else { dfop._isSearchneed = false; $showPanel.html(""); } }, search: function ($self) {// 每次搜索100条 var dfop = $self[0]._lrcustmerquery.dfop; var value = dfop._value; var begin = dfop._begin; var end = dfop._end; var data = dfop.data; for (var i = begin; i < end; i++) { var _item = data[i]; if (item[dfop.text].indexOf(value) != -1) { $.learunisearch.renderNone($self, item[dfop.text]); } } if (end < data.length) { dfop._begin = end; dfop._end = end + 100; if (dfop._end > data.length) { dfop._end = data.length; } setTimeout(function () { $.learunisearch.search($self); }); } else { dfop._isSearched = true; } }, renderNone: function ($self, text) {// 刷新一条数据 var dfop = $self[0]._lrcustmerquery.dfop; var $showPanel = $('#learunisearch_' + dfop.id); if (dfop._first) { dfop._first = false; $showPanel.html(""); $showPanel.parent().show(); } $showPanel.append('
  • ' + text + '
  • '); } }; $.fn.lrcustmerquery = function (op) { var dfop = { // 默认查询条件项;[{fields:[{name:'',value:'',condition:''}],Formula:'',name:''}] dfData: [], // 字段列表[{name:'',value:''}] Fields: [], // 所属功能地址url moduleUrl: '', // 加载自定义查询地址 url: top.$.rootUrl + '/LR_SystemModule/CustmerQuery/GetList', // 自定义查询数据 data: [], // 标记性参数 _isload:false }; $.extend(dfop, op || {}); var $self = $(this); dfop.id = $self.attr('id'); if (!dfop.id) { return false; } $self[0]._lrcustmerquery = { "dfop": dfop }; $.lrcustmerquery.init($self); //加载数据 if (!!dfop.url) { learun.httpAsync('GET', dfop.url, dfop.param, function (data) { $self[0]._lrcustmerquery.dfop.data = data || []; dfop._isload = true; }); } return $self; }; })(jQuery, top.learun);