优化列表导出功能
修复导出全部BUG 优化移动端列表展示 优化iOS移动端展示
正在显示
11 个修改的文件
包含
171 行增加
和
100 行删除
@@ -262,7 +262,7 @@ class Backend extends Controller | @@ -262,7 +262,7 @@ class Backend extends Controller | ||
262 | $sort = $this->request->get("sort", !empty($this->model) && $this->model->getPk() ? $this->model->getPk() : 'id'); | 262 | $sort = $this->request->get("sort", !empty($this->model) && $this->model->getPk() ? $this->model->getPk() : 'id'); |
263 | $order = $this->request->get("order", "DESC"); | 263 | $order = $this->request->get("order", "DESC"); |
264 | $offset = $this->request->get("offset/d", 0); | 264 | $offset = $this->request->get("offset/d", 0); |
265 | - $limit = $this->request->get("limit/d", 10); | 265 | + $limit = $this->request->get("limit/d", 999999); |
266 | //新增自动计算页码 | 266 | //新增自动计算页码 |
267 | $page = $limit ? intval($offset / $limit) + 1 : 1; | 267 | $page = $limit ? intval($offset / $limit) + 1 : 1; |
268 | if ($this->request->has("page")) { | 268 | if ($this->request->has("page")) { |
@@ -390,7 +390,7 @@ class Backend extends Controller | @@ -390,7 +390,7 @@ class Backend extends Controller | ||
390 | $relation = Loader::parseName($tableArr[0], 1, false); | 390 | $relation = Loader::parseName($tableArr[0], 1, false); |
391 | $this->model->alias([$this->model->$relation()->getTable() => $tableArr[0]]); | 391 | $this->model->alias([$this->model->$relation()->getTable() => $tableArr[0]]); |
392 | } | 392 | } |
393 | - $where[] = [$k, str_replace('RANGE', 'BETWEEN', $sym) . ' time', $arr]; | 393 | + $where[] = [$k, str_replace('RANGE', 'BETWEEN', $sym) . ' TIME', $arr]; |
394 | break; | 394 | break; |
395 | case 'NULL': | 395 | case 'NULL': |
396 | case 'IS NULL': | 396 | case 'IS NULL': |
@@ -471,7 +471,7 @@ class Backend extends Controller | @@ -471,7 +471,7 @@ class Backend extends Controller | ||
471 | $ishtml = $this->request->request("isHtml", 0); | 471 | $ishtml = $this->request->request("isHtml", 0); |
472 | if ($istree) { | 472 | if ($istree) { |
473 | $word = []; | 473 | $word = []; |
474 | - $pagesize = 99999; | 474 | + $pagesize = 999999; |
475 | } | 475 | } |
476 | $order = []; | 476 | $order = []; |
477 | foreach ($orderby as $k => $v) { | 477 | foreach ($orderby as $k => $v) { |
@@ -482,7 +482,7 @@ class Backend extends Controller | @@ -482,7 +482,7 @@ class Backend extends Controller | ||
482 | //如果有primaryvalue,说明当前是初始化传值 | 482 | //如果有primaryvalue,说明当前是初始化传值 |
483 | if ($primaryvalue !== null) { | 483 | if ($primaryvalue !== null) { |
484 | $where = [$primarykey => ['in', $primaryvalue]]; | 484 | $where = [$primarykey => ['in', $primaryvalue]]; |
485 | - $pagesize = 99999; | 485 | + $pagesize = 999999; |
486 | } else { | 486 | } else { |
487 | $where = function ($query) use ($word, $andor, $field, $searchfield, $custom) { | 487 | $where = function ($query) use ($word, $andor, $field, $searchfield, $custom) { |
488 | $logic = $andor == 'AND' ? '&' : '|'; | 488 | $logic = $andor == 'AND' ? '&' : '|'; |
@@ -244,6 +244,7 @@ class User extends Frontend | @@ -244,6 +244,7 @@ class User extends Frontend | ||
244 | ]; | 244 | ]; |
245 | 245 | ||
246 | $msg = [ | 246 | $msg = [ |
247 | + 'renewpassword.confirm' => __('Password and confirm password don\'t match') | ||
247 | ]; | 248 | ]; |
248 | $data = [ | 249 | $data = [ |
249 | 'oldpassword' => $oldpassword, | 250 | 'oldpassword' => $oldpassword, |
1 | <?php | 1 | <?php |
2 | 2 | ||
3 | return [ | 3 | return [ |
4 | - 'User center' => '会员中心', | ||
5 | - 'Register' => '注册', | ||
6 | - 'Login' => '登录', | ||
7 | - 'Account' => '账号', | ||
8 | - 'Mobile' => '手机号', | ||
9 | - 'Email' => '邮箱', | ||
10 | - 'Captcha' => '验证码', | ||
11 | - 'Lv' => 'Lv', | ||
12 | - 'Score' => '积分', | ||
13 | - 'Day' => '天', | ||
14 | - 'Intro' => '个人介绍', | ||
15 | - 'Successions' => '连续登录', | ||
16 | - 'Maxsuccessions' => '最长连续登录', | ||
17 | - 'Logintime' => '登录时间', | ||
18 | - 'Prevtime' => '最后登录', | ||
19 | - 'Change' => '修改', | ||
20 | - 'Click to edit' => '点击编辑', | ||
21 | - 'Email/Mobile/Username' => '邮箱/手机/用户名', | ||
22 | - 'Sign up successful' => '注册成功', | ||
23 | - 'Email active successful' => '邮箱激活成功', | ||
24 | - 'Username can not be empty' => '用户名不能为空', | ||
25 | - 'Username must be 3 to 30 characters' => '用户名必须3-30个字符', | ||
26 | - 'Account must be 3 to 50 characters' => '账户必须3-50个字符', | ||
27 | - 'Password can not be empty' => '密码不能为空', | ||
28 | - 'Password must be 6 to 30 characters' => '密码必须6-30个字符', | ||
29 | - 'Email is incorrect' => '邮箱格式不正确', | ||
30 | - 'Mobile is incorrect' => '手机格式不正确', | ||
31 | - 'Username already exist' => '用户名已经存在', | ||
32 | - 'Nickname already exist' => '昵称已经存在', | ||
33 | - 'Email already exist' => '邮箱已经存在', | ||
34 | - 'Mobile already exist' => '手机号已经存在', | ||
35 | - 'Username is incorrect' => '用户名不正确', | ||
36 | - 'Reset password' => '修改密码', | ||
37 | - 'Reset password by email' => '通过邮箱', | ||
38 | - 'Reset password by mobile' => '通过手机重置', | ||
39 | - 'Reset password successful' => '修改密码成功', | ||
40 | - 'Account is locked' => '账户已经被锁定', | ||
41 | - 'Password is incorrect' => '密码不正确', | ||
42 | - 'Account is incorrect' => '账户不正确', | ||
43 | - 'Account not exist' => '账户不存在', | ||
44 | - 'Account can not be empty' => '账户不能为空', | ||
45 | - 'Username or password is incorrect' => '用户名或密码不正确', | ||
46 | - 'You are not logged in' => '你当前还未登录', | ||
47 | - 'You\'ve logged in, do not login again' => '你已经登录,请不要重复登录', | ||
48 | - 'This guy hasn\'t written anything yet' => '这个人很懒,啥也没写', | ||
49 | - 'Profile' => '个人资料', | ||
50 | - 'Old password' => '旧密码', | ||
51 | - 'New password' => '新密码', | ||
52 | - 'Renew password' => '确认新密码', | ||
53 | - 'Change password' => '修改密码', | ||
54 | - 'New email' => '新邮箱', | ||
55 | - 'New mobile' => '新手机号', | ||
56 | - 'Change password successful' => '修改密码成功', | ||
57 | - 'Captcha is incorrect' => '验证码不正确', | ||
58 | - 'Logged in successful' => '登录成功', | ||
59 | - 'Logout successful' => '退出成功', | ||
60 | - 'User center already closed' => '会员中心已经关闭', | ||
61 | - 'Operation failed' => '操作失败', | ||
62 | - 'Invalid parameters' => '参数不正确', | ||
63 | - 'Change password failure' => '修改密码失败', | ||
64 | - 'All' => '全部', | ||
65 | - 'Url' => '物理路径', | ||
66 | - 'Imagewidth' => '宽度', | ||
67 | - 'Imageheight' => '高度', | ||
68 | - 'Imagetype' => '图片类型', | ||
69 | - 'Imageframes' => '图片帧数', | ||
70 | - 'Preview' => '预览', | ||
71 | - 'Filename' => '文件名', | ||
72 | - 'Filesize' => '文件大小', | ||
73 | - 'Mimetype' => 'Mime类型', | ||
74 | - 'Image' => '图片', | ||
75 | - 'Audio' => '音频', | ||
76 | - 'Video' => '视频', | ||
77 | - 'Text' => '文档', | ||
78 | - 'Application' => '应用', | ||
79 | - 'Zip' => '压缩包', | ||
80 | - 'Extparam' => '透传数据', | ||
81 | - 'Createtime' => '创建日期', | ||
82 | - 'Uploadtime' => '上传时间', | ||
83 | - 'Storage' => '存储引擎', | 4 | + 'User center' => '会员中心', |
5 | + 'Register' => '注册', | ||
6 | + 'Login' => '登录', | ||
7 | + 'Account' => '账号', | ||
8 | + 'Mobile' => '手机号', | ||
9 | + 'Email' => '邮箱', | ||
10 | + 'Captcha' => '验证码', | ||
11 | + 'Lv' => 'Lv', | ||
12 | + 'Score' => '积分', | ||
13 | + 'Day' => '天', | ||
14 | + 'Intro' => '个人介绍', | ||
15 | + 'Successions' => '连续登录', | ||
16 | + 'Maxsuccessions' => '最长连续登录', | ||
17 | + 'Logintime' => '登录时间', | ||
18 | + 'Prevtime' => '最后登录', | ||
19 | + 'Change' => '修改', | ||
20 | + 'Click to edit' => '点击编辑', | ||
21 | + 'Email/Mobile/Username' => '邮箱/手机/用户名', | ||
22 | + 'Sign up successful' => '注册成功', | ||
23 | + 'Email active successful' => '邮箱激活成功', | ||
24 | + 'Username can not be empty' => '用户名不能为空', | ||
25 | + 'Username must be 3 to 30 characters' => '用户名必须3-30个字符', | ||
26 | + 'Account must be 3 to 50 characters' => '账户必须3-50个字符', | ||
27 | + 'Password can not be empty' => '密码不能为空', | ||
28 | + 'Password must be 6 to 30 characters' => '密码必须6-30个字符', | ||
29 | + 'Email is incorrect' => '邮箱格式不正确', | ||
30 | + 'Mobile is incorrect' => '手机格式不正确', | ||
31 | + 'Username already exist' => '用户名已经存在', | ||
32 | + 'Nickname already exist' => '昵称已经存在', | ||
33 | + 'Email already exist' => '邮箱已经存在', | ||
34 | + 'Mobile already exist' => '手机号已经存在', | ||
35 | + 'Username is incorrect' => '用户名不正确', | ||
36 | + 'Reset password' => '修改密码', | ||
37 | + 'Reset password by email' => '通过邮箱', | ||
38 | + 'Reset password by mobile' => '通过手机重置', | ||
39 | + 'Reset password successful' => '修改密码成功', | ||
40 | + 'Account is locked' => '账户已经被锁定', | ||
41 | + 'Password is incorrect' => '密码不正确', | ||
42 | + 'Account is incorrect' => '账户不正确', | ||
43 | + 'Account not exist' => '账户不存在', | ||
44 | + 'Account can not be empty' => '账户不能为空', | ||
45 | + 'Username or password is incorrect' => '用户名或密码不正确', | ||
46 | + 'You are not logged in' => '你当前还未登录', | ||
47 | + 'You\'ve logged in, do not login again' => '你已经登录,请不要重复登录', | ||
48 | + 'This guy hasn\'t written anything yet' => '这个人很懒,啥也没写', | ||
49 | + 'Profile' => '个人资料', | ||
50 | + 'Old password' => '旧密码', | ||
51 | + 'New password' => '新密码', | ||
52 | + 'Renew password' => '确认新密码', | ||
53 | + 'Change password' => '修改密码', | ||
54 | + 'New email' => '新邮箱', | ||
55 | + 'New mobile' => '新手机号', | ||
56 | + 'Change password successful' => '修改密码成功', | ||
57 | + 'Password and confirm password don\'t match' => '两次输入的密码不一致', | ||
58 | + 'Captcha is incorrect' => '验证码不正确', | ||
59 | + 'Logged in successful' => '登录成功', | ||
60 | + 'Logout successful' => '退出成功', | ||
61 | + 'User center already closed' => '会员中心已经关闭', | ||
62 | + 'Operation failed' => '操作失败', | ||
63 | + 'Invalid parameters' => '参数不正确', | ||
64 | + 'Change password failure' => '修改密码失败', | ||
65 | + 'All' => '全部', | ||
66 | + 'Url' => '物理路径', | ||
67 | + 'Imagewidth' => '宽度', | ||
68 | + 'Imageheight' => '高度', | ||
69 | + 'Imagetype' => '图片类型', | ||
70 | + 'Imageframes' => '图片帧数', | ||
71 | + 'Preview' => '预览', | ||
72 | + 'Filename' => '文件名', | ||
73 | + 'Filesize' => '文件大小', | ||
74 | + 'Mimetype' => 'Mime类型', | ||
75 | + 'Image' => '图片', | ||
76 | + 'Audio' => '音频', | ||
77 | + 'Video' => '视频', | ||
78 | + 'Text' => '文档', | ||
79 | + 'Application' => '应用', | ||
80 | + 'Zip' => '压缩包', | ||
81 | + 'Extparam' => '透传数据', | ||
82 | + 'Createtime' => '创建日期', | ||
83 | + 'Uploadtime' => '上传时间', | ||
84 | + 'Storage' => '存储引擎', | ||
84 | ]; | 85 | ]; |
@@ -9,7 +9,7 @@ | @@ -9,7 +9,7 @@ | ||
9 | "jquery": "^2.1.4", | 9 | "jquery": "^2.1.4", |
10 | "bootstrap": "^3.3.7", | 10 | "bootstrap": "^3.3.7", |
11 | "font-awesome": "^4.6.1", | 11 | "font-awesome": "^4.6.1", |
12 | - "bootstrap-table": "fastadmin-bootstraptable#~1.11.3", | 12 | + "bootstrap-table": "fastadmin-bootstraptable#~1.11.5", |
13 | "jstree": "~3.3.2", | 13 | "jstree": "~3.3.2", |
14 | "moment": "^2.20.1", | 14 | "moment": "^2.20.1", |
15 | "toastr": "~2.1.3", | 15 | "toastr": "~2.1.3", |
@@ -42,6 +42,13 @@ html.ios-fix body { | @@ -42,6 +42,13 @@ html.ios-fix body { | ||
42 | overflow: auto; | 42 | overflow: auto; |
43 | -webkit-overflow-scrolling: touch; | 43 | -webkit-overflow-scrolling: touch; |
44 | } | 44 | } |
45 | +html.ios-fix .wrapper, | ||
46 | +html.ios-fix body .wrapper, | ||
47 | +html.ios-fix .tab-pane, | ||
48 | +html.ios-fix body .tab-pane { | ||
49 | + overflow: auto; | ||
50 | + -webkit-overflow-scrolling: touch; | ||
51 | +} | ||
45 | .wrapper { | 52 | .wrapper { |
46 | height: 100%; | 53 | height: 100%; |
47 | } | 54 | } |
@@ -973,8 +980,32 @@ table.table-nowrap thead > tr > th { | @@ -973,8 +980,32 @@ table.table-nowrap thead > tr > th { | ||
973 | #firstnav .navbar-nav > .user-menu .user-image { | 980 | #firstnav .navbar-nav > .user-menu .user-image { |
974 | margin-top: -3px; | 981 | margin-top: -3px; |
975 | } | 982 | } |
976 | - .fixed-table-toolbar .columns-right.btn-group { | ||
977 | - display: none; | 983 | + .fixed-table-toolbar > .bs-bars { |
984 | + float: none !important; | ||
985 | + } | ||
986 | + .fixed-table-toolbar .toolbar a.btn-refresh, | ||
987 | + .fixed-table-toolbar .toolbar a.btn-del, | ||
988 | + .fixed-table-toolbar .toolbar a.btn-add, | ||
989 | + .fixed-table-toolbar .toolbar a.btn-edit, | ||
990 | + .fixed-table-toolbar .toolbar a.btn-import, | ||
991 | + .fixed-table-toolbar .toolbar a.btn-more, | ||
992 | + .fixed-table-toolbar .toolbar a.btn-recyclebin, | ||
993 | + .fixed-table-toolbar .toolbar a.btn-mini-xs { | ||
994 | + font-size: 0; | ||
995 | + } | ||
996 | + .fixed-table-toolbar .toolbar a.btn-refresh .fa, | ||
997 | + .fixed-table-toolbar .toolbar a.btn-del .fa, | ||
998 | + .fixed-table-toolbar .toolbar a.btn-add .fa, | ||
999 | + .fixed-table-toolbar .toolbar a.btn-edit .fa, | ||
1000 | + .fixed-table-toolbar .toolbar a.btn-import .fa, | ||
1001 | + .fixed-table-toolbar .toolbar a.btn-more .fa, | ||
1002 | + .fixed-table-toolbar .toolbar a.btn-recyclebin .fa, | ||
1003 | + .fixed-table-toolbar .toolbar a.btn-mini-xs .fa { | ||
1004 | + font-size: initial; | ||
1005 | + } | ||
1006 | + .fixed-table-toolbar .search { | ||
1007 | + max-width: 110px; | ||
1008 | + float: left !important; | ||
978 | } | 1009 | } |
979 | .fixed .content-wrapper, | 1010 | .fixed .content-wrapper, |
980 | .fixed .right-side { | 1011 | .fixed .right-side { |
@@ -1085,7 +1116,7 @@ table.table-nowrap thead > tr > th { | @@ -1085,7 +1116,7 @@ table.table-nowrap thead > tr > th { | ||
1085 | min-height: 41px; | 1116 | min-height: 41px; |
1086 | background-color: #fff; | 1117 | background-color: #fff; |
1087 | box-sizing: border-box; | 1118 | box-sizing: border-box; |
1088 | - z-index: 1; | 1119 | + z-index: 2; |
1089 | box-shadow: 0 -1px 8px rgba(0, 0, 0, 0.08); | 1120 | box-shadow: 0 -1px 8px rgba(0, 0, 0, 0.08); |
1090 | } | 1121 | } |
1091 | .fixed-columns .fixed-table-body, | 1122 | .fixed-columns .fixed-table-body, |
此 diff 太大无法显示。
此 diff 太大无法显示。
此 diff 太大无法显示。
此 diff 太大无法显示。
@@ -14,10 +14,16 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | @@ -14,10 +14,16 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | ||
14 | titleForm: '', //为空则不显示标题,不定义默认显示:普通搜索 | 14 | titleForm: '', //为空则不显示标题,不定义默认显示:普通搜索 |
15 | idTable: 'commonTable', | 15 | idTable: 'commonTable', |
16 | showExport: true, | 16 | showExport: true, |
17 | - exportDataType: "all", | 17 | + exportDataType: "auto", |
18 | exportTypes: ['json', 'xml', 'csv', 'txt', 'doc', 'excel'], | 18 | exportTypes: ['json', 'xml', 'csv', 'txt', 'doc', 'excel'], |
19 | exportOptions: { | 19 | exportOptions: { |
20 | fileName: 'export_' + Moment().format("YYYY-MM-DD"), | 20 | fileName: 'export_' + Moment().format("YYYY-MM-DD"), |
21 | + preventInjection: false, | ||
22 | + mso: { | ||
23 | + onMsoNumberFormat: function (cell, row, col) { | ||
24 | + return !isNaN($(cell).text()) ? '\\@' : ''; | ||
25 | + }, | ||
26 | + }, | ||
21 | ignoreColumn: [0, 'operate'] //默认不导出第一列(checkbox)与操作(operate)列 | 27 | ignoreColumn: [0, 'operate'] //默认不导出第一列(checkbox)与操作(operate)列 |
22 | }, | 28 | }, |
23 | pageSize: localStorage.getItem("pagesize") || 10, | 29 | pageSize: localStorage.getItem("pagesize") || 10, |
@@ -39,6 +45,7 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | @@ -39,6 +45,7 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | ||
39 | paginationNextText: __("Next"), | 45 | paginationNextText: __("Next"), |
40 | paginationLastText: __("Last"), | 46 | paginationLastText: __("Last"), |
41 | cardView: false, //卡片视图 | 47 | cardView: false, //卡片视图 |
48 | + iosCardView: true, //ios卡片视图 | ||
42 | checkOnInit: true, //是否在初始化时判断 | 49 | checkOnInit: true, //是否在初始化时判断 |
43 | escape: true, //是否对内容进行转义 | 50 | escape: true, //是否对内容进行转义 |
44 | selectedIds: [], | 51 | selectedIds: [], |
@@ -103,10 +110,6 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | @@ -103,10 +110,6 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | ||
103 | defaults = defaults ? defaults : {}; | 110 | defaults = defaults ? defaults : {}; |
104 | columnDefaults = columnDefaults ? columnDefaults : {}; | 111 | columnDefaults = columnDefaults ? columnDefaults : {}; |
105 | locales = locales ? locales : {}; | 112 | locales = locales ? locales : {}; |
106 | - // 如果是iOS设备则启用卡片视图 | ||
107 | - if (navigator.userAgent.match(/(iPod|iPhone|iPad)/)) { | ||
108 | - Table.defaults.cardView = true; | ||
109 | - } | ||
110 | $.fn.bootstrapTable.Constructor.prototype.getSelectItem = function () { | 113 | $.fn.bootstrapTable.Constructor.prototype.getSelectItem = function () { |
111 | return this.$selectItem; | 114 | return this.$selectItem; |
112 | }; | 115 | }; |
@@ -135,6 +138,11 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | @@ -135,6 +138,11 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | ||
135 | return __('Go'); | 138 | return __('Go'); |
136 | } | 139 | } |
137 | }, locales); | 140 | }, locales); |
141 | + // 如果是iOS设备则判断是否启用卡片视图 | ||
142 | + if ($.fn.bootstrapTable.defaults.iosCardView && navigator.userAgent.match(/(iPod|iPhone|iPad)/)) { | ||
143 | + Table.defaults.cardView = true; | ||
144 | + $.fn.bootstrapTable.defaults.cardView = true; | ||
145 | + } | ||
138 | if (typeof defaults.exportTypes != 'undefined') { | 146 | if (typeof defaults.exportTypes != 'undefined') { |
139 | $.fn.bootstrapTable.defaults.exportTypes = defaults.exportTypes; | 147 | $.fn.bootstrapTable.defaults.exportTypes = defaults.exportTypes; |
140 | } | 148 | } |
@@ -227,9 +235,14 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | @@ -227,9 +235,14 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | ||
227 | checkboxtd.drop("start", function () { | 235 | checkboxtd.drop("start", function () { |
228 | Table.api.toggleattr(this); | 236 | Table.api.toggleattr(this); |
229 | }).drop(function () { | 237 | }).drop(function () { |
230 | - Table.api.toggleattr(this); | ||
231 | - }).drop("end", function () { | ||
232 | - Table.api.toggleattr(this); | 238 | + // Table.api.toggleattr(this); |
239 | + }).drop("end", function (e) { | ||
240 | + var that = this; | ||
241 | + setTimeout(function () { | ||
242 | + if (e.type === 'mousemove') { | ||
243 | + Table.api.toggleattr(that); | ||
244 | + } | ||
245 | + }, 0); | ||
233 | }); | 246 | }); |
234 | $.drop({ | 247 | $.drop({ |
235 | multi: true | 248 | multi: true |
@@ -237,6 +250,7 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | @@ -237,6 +250,7 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | ||
237 | }); | 250 | }); |
238 | } | 251 | } |
239 | }); | 252 | }); |
253 | + var exportDataType = options.exportDataType; | ||
240 | // 处理选中筛选框后按钮的状态统一变更 | 254 | // 处理选中筛选框后按钮的状态统一变更 |
241 | table.on('check.bs.table uncheck.bs.table check-all.bs.table uncheck-all.bs.table post-body.bs.table', function (e) { | 255 | table.on('check.bs.table uncheck.bs.table check-all.bs.table uncheck-all.bs.table post-body.bs.table', function (e) { |
242 | var allIds = table.bootstrapTable("getData").map(function (item) { | 256 | var allIds = table.bootstrapTable("getData").map(function (item) { |
@@ -262,8 +276,11 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | @@ -262,8 +276,11 @@ define(['jquery', 'bootstrap', 'moment', 'moment/locale/zh-cn', 'bootstrap-table | ||
262 | options.selectedIds = selectedIds; | 276 | options.selectedIds = selectedIds; |
263 | options.selectedData = selectedData; | 277 | options.selectedData = selectedData; |
264 | } | 278 | } |
279 | + //如果导出类型为auto时则自动判断 | ||
280 | + if (exportDataType === 'auto') { | ||
281 | + options.exportDataType = selectedIds.length > 0 ? 'selected' : 'all'; | ||
282 | + } | ||
265 | $(Table.config.disabledbtn, toolbar).toggleClass('disabled', !options.selectedIds.length); | 283 | $(Table.config.disabledbtn, toolbar).toggleClass('disabled', !options.selectedIds.length); |
266 | - | ||
267 | }); | 284 | }); |
268 | // 绑定TAB事件 | 285 | // 绑定TAB事件 |
269 | $('.panel-heading [data-field] a[data-toggle="tab"]').on('shown.bs.tab', function (e) { | 286 | $('.panel-heading [data-field] a[data-toggle="tab"]').on('shown.bs.tab', function (e) { |
@@ -59,6 +59,11 @@ html.ios-fix, html.ios-fix body { | @@ -59,6 +59,11 @@ html.ios-fix, html.ios-fix body { | ||
59 | height: 100%; | 59 | height: 100%; |
60 | overflow: auto; | 60 | overflow: auto; |
61 | -webkit-overflow-scrolling: touch; | 61 | -webkit-overflow-scrolling: touch; |
62 | + | ||
63 | + .wrapper, .tab-pane { | ||
64 | + overflow: auto; | ||
65 | + -webkit-overflow-scrolling: touch; | ||
66 | + } | ||
62 | } | 67 | } |
63 | 68 | ||
64 | .wrapper { | 69 | .wrapper { |
@@ -1205,8 +1210,23 @@ table.table-nowrap { | @@ -1205,8 +1210,23 @@ table.table-nowrap { | ||
1205 | } | 1210 | } |
1206 | 1211 | ||
1207 | .fixed-table-toolbar { | 1212 | .fixed-table-toolbar { |
1208 | - .columns-right.btn-group { | ||
1209 | - display: none; | 1213 | + > .bs-bars { |
1214 | + float: none !important; | ||
1215 | + } | ||
1216 | + | ||
1217 | + .toolbar { | ||
1218 | + a.btn-refresh, a.btn-del, a.btn-add, a.btn-edit, a.btn-import, a.btn-more, a.btn-recyclebin, a.btn-mini-xs { | ||
1219 | + font-size: 0; | ||
1220 | + | ||
1221 | + .fa { | ||
1222 | + font-size: initial; | ||
1223 | + } | ||
1224 | + } | ||
1225 | + } | ||
1226 | + | ||
1227 | + .search { | ||
1228 | + max-width: 110px; | ||
1229 | + float: left !important; | ||
1210 | } | 1230 | } |
1211 | } | 1231 | } |
1212 | 1232 | ||
@@ -1349,7 +1369,7 @@ table.table-nowrap { | @@ -1349,7 +1369,7 @@ table.table-nowrap { | ||
1349 | min-height: 41px; | 1369 | min-height: 41px; |
1350 | background-color: #fff; | 1370 | background-color: #fff; |
1351 | box-sizing: border-box; | 1371 | box-sizing: border-box; |
1352 | - z-index: 1; | 1372 | + z-index: 2; |
1353 | box-shadow: 0 -1px 8px rgba(0, 0, 0, .08); | 1373 | box-shadow: 0 -1px 8px rgba(0, 0, 0, .08); |
1354 | 1374 | ||
1355 | .fixed-table-body { | 1375 | .fixed-table-body { |
@@ -1390,3 +1410,4 @@ table.table-nowrap { | @@ -1390,3 +1410,4 @@ table.table-nowrap { | ||
1390 | -o-transform: rotate(-90deg); | 1410 | -o-transform: rotate(-90deg); |
1391 | transform: rotate(-90deg); | 1411 | transform: rotate(-90deg); |
1392 | } | 1412 | } |
1413 | + |
-
请 注册 或 登录 后发表评论