diff --git a/application/admin/controller/Category.php b/application/admin/controller/Category.php index ca7e31f4..b16c4d47 100644 --- a/application/admin/controller/Category.php +++ b/application/admin/controller/Category.php @@ -46,22 +46,33 @@ class Category extends Backend if ($this->request->isAjax()) { $search = $this->request->request("search"); + $type = $this->request->request("type"); + //构造父类select列表选项数据 $list = []; - if ($search) - { + foreach ($this->categorylist as $k => $v) { - if (stripos($v['name'], $search) !== false || stripos($v['nickname'], $search) !== false) - { - $list[] = $v; + if ($search) { + if ($v['type'] == $type && stripos($v['name'], $search) !== false || stripos($v['nickname'], $search) !== false) + { + if($type == "all" || $type == null) { + $list = $this->categorylist; + } else { + $list[] = $v; + } + } + } else { + if($type == "all" || $type == null) { + $list = $this->categorylist; + } else if ($v['type'] == $type){ + $list[] = $v; + } + } + } - } - else - { - $list = $this->categorylist; - } + $total = count($list); $result = array("total" => $total, "rows" => $list); diff --git a/application/admin/view/category/index.html b/application/admin/view/category/index.html index 3c07c85b..b457d3ce 100644 --- a/application/admin/view/category/index.html +++ b/application/admin/view/category/index.html @@ -1,6 +1,14 @@
- {:build_heading()} +
+ {:build_heading()} + +
diff --git a/public/assets/js/backend/category.js b/public/assets/js/backend/category.js index 6b9750fb..6c4bb675 100644 --- a/public/assets/js/backend/category.js +++ b/public/assets/js/backend/category.js @@ -15,10 +15,9 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin } }); - var table = $("#table"); - // 初始化表格 - table.bootstrapTable({ + var table = $("#table"); + var tableOptions = { url: $.fn.bootstrapTable.defaults.extend.index_url, escape: false, pk: 'id', @@ -39,10 +38,33 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate} ] ] - }); + }; + // 初始化表格 + table.bootstrapTable(tableOptions); // 为表格绑定事件 Table.api.bindevent(table); + + //绑定TAB事件 + $('a[data-toggle="tab"]').on('shown.bs.tab', function (e) { + // var options = table.bootstrapTable(tableOptions); + var typeStr = $(this).attr("href"); + var options = table.bootstrapTable('getOptions'); + options.pageNumber = 1; + options.queryParams = function (params) { + // params.filter = JSON.stringify({type: typeStr}); + params.type = typeStr; + + return params; + }; + table.bootstrapTable('refresh', {}); + return false; + + }); + + //必须默认触发shown.bs.tab事件 + // $('ul.nav-tabs li.active a[data-toggle="tab"]').trigger("shown.bs.tab"); + }, add: function () { Controller.api.bindevent();