|
@@ -1136,12 +1136,40 @@ $(document).ready(() => {
|
|
|
});
|
|
|
$('#list-input').on('blur', function () {
|
|
|
const select = parseInt($('#select-list').val());
|
|
|
- const value = $(this).val();
|
|
|
+ const value = _.trim($(this).val());
|
|
|
+ const valueList = _.slice(_.without(_.uniq(value.split(' ')), ''), 0, 10);
|
|
|
+ console.log(valueList);
|
|
|
+ // 判断是否存在多个分词,以换行或空格分隔,多个则显示左侧菜单
|
|
|
+ if (value !== '' && valueList.length > 1) {
|
|
|
+ if (_.without(_.uniq(value.split(' ')), '').length > 10) {
|
|
|
+ toastr.warning('最多筛选以空格分割的前10个不重复关键词');
|
|
|
+ }
|
|
|
+ $('#table-list').addClass('col-9').removeClass('col-12');
|
|
|
+ $('#table-list').siblings('.col-3').show();
|
|
|
+ $('#list-search-keyword').html('<a href="javascript:void(0);" data-keyword="" class="list-group-item list-group-item-action active">全部</a>');
|
|
|
+ for (const v of valueList) {
|
|
|
+ $('#list-search-keyword').append(`<a href="javascript:void(0);" data-keyword="${v}" class="list-group-item list-group-item-action">${v}</a>`);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ $('#table-list').addClass('col-12').removeClass('col-9');
|
|
|
+ $('#table-list').siblings('.col-3').hide();
|
|
|
+ $('#list-search-keyword').html('<a href="javascript:void(0);" data-keyword="" class="list-group-item list-group-item-action active">全部</a>');
|
|
|
+ }
|
|
|
let showListData = changeListData;
|
|
|
if (select === 1 && value !== '') {
|
|
|
$(this).siblings('a').show();
|
|
|
showListData = _.filter(changeListData, function (c) {
|
|
|
- return ((c.code && c.code.indexOf(value) !== -1) || (c.name && c.name.indexOf(value) !== -1)) && c.cid;
|
|
|
+ let flag = false;
|
|
|
+ if (c.cid) {
|
|
|
+ for(const v of valueList) {
|
|
|
+ if ((c.code && c.code.indexOf(v) !== -1) || (c.name && c.name.indexOf(v) !== -1)) {
|
|
|
+ flag = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return flag;
|
|
|
+ // return ((c.code && c.code.indexOf(value) !== -1) || (c.name && c.name.indexOf(value) !== -1)) && c.cid;
|
|
|
});
|
|
|
} else if (select === 1 && value === '') {
|
|
|
$(this).siblings('a').hide();
|
|
@@ -1151,7 +1179,15 @@ $(document).ready(() => {
|
|
|
} else if (value !== '') {
|
|
|
$(this).siblings('a').show();
|
|
|
showListData = _.filter(changeListData, function (c) {
|
|
|
- return (c.code && c.code.indexOf(value) !== -1) || (c.name && c.name.indexOf(value) !== -1);
|
|
|
+ let flag = false;
|
|
|
+ for(const v of valueList) {
|
|
|
+ if ((c.code && c.code.indexOf(v) !== -1) || (c.name && c.name.indexOf(v) !== -1)) {
|
|
|
+ flag = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return flag;
|
|
|
+ // return (c.code && c.code.indexOf(value) !== -1) || (c.name && c.name.indexOf(value) !== -1);
|
|
|
});
|
|
|
} else {
|
|
|
$(this).siblings('a').hide();
|
|
@@ -1163,6 +1199,29 @@ $(document).ready(() => {
|
|
|
$('#code-list').html('');
|
|
|
$('#code-select-all').prop('checked', false);
|
|
|
});
|
|
|
+ // 检索关键字切换
|
|
|
+ $('body').on('click', '#list-search-keyword a', function () {
|
|
|
+ if (!$(this).hasClass('active')) {
|
|
|
+ const keyword = $(this).attr('data-keyword');
|
|
|
+ console.log(keyword);
|
|
|
+ $(this).siblings().removeClass('active');
|
|
|
+ $(this).addClass('active');
|
|
|
+ if (keyword === '') {
|
|
|
+ $('#list-input').blur();
|
|
|
+ } else {
|
|
|
+ const select = parseInt($('#select-list').val());
|
|
|
+ const showListData = _.filter(changeListData, function (c) {
|
|
|
+ return ((c.code && c.code.indexOf(keyword) !== -1) || (c.name && c.name.indexOf(keyword) !== -1)) && (select === 1 ? c.cid : 1);
|
|
|
+ });
|
|
|
+ makeListTable(changeListData, showListData);
|
|
|
+ $('#table-list-select tr').removeClass('table-warning');
|
|
|
+ $('#code-input').val('');
|
|
|
+ $('#code-input').siblings('a').hide();
|
|
|
+ $('#code-list').html('');
|
|
|
+ $('#code-select-all').prop('checked', false);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
// 回车提交
|
|
|
$('#code-input').on('keypress', function () {
|
|
|
if(window.event.keyCode === 13) {
|
|
@@ -1194,6 +1253,10 @@ $(document).ready(() => {
|
|
|
makeListTable(changeListData, showListData);
|
|
|
$('#table-list-select tr').removeClass('table-warning');
|
|
|
$('#code-list').html('');
|
|
|
+ $('#table-list').addClass('col-12').removeClass('col-9');
|
|
|
+ $('#table-list').siblings('.col-3').hide();
|
|
|
+ $('#list-search-keyword').html('');
|
|
|
+ $('#list-search-keyword').siblings('a').addClass('active');
|
|
|
} else {
|
|
|
makeCodeTable();
|
|
|
}
|