diff --git a/app/admin/controller/Menu.php b/app/admin/controller/Menu.php index c926f4846..279ed11d2 100644 --- a/app/admin/controller/Menu.php +++ b/app/admin/controller/Menu.php @@ -56,8 +56,8 @@ class Menu extends Controller protected function _index_page_filter(array &$data) { foreach ($data as &$vo) { - if ($vo['url'] !== '#') { - $vo['url'] = trim(url($vo['url'])->build() . (empty($vo['params']) ? '' : "?{$vo['params']}"), '/\\'); + if ($vo['url'] !== '#' && !preg_match('#^https?://#', $vo['url'])) { + $vo['url'] = trim(url($vo['url']) . ($vo['params'] ? "?{$vo['params']}" : ''), '\\/'); } $vo['ids'] = join(',', DataExtend::getArrSubIds($data, $vo['id'])); } diff --git a/public/static/admin.js b/public/static/admin.js index a36dc8712..afd6a7b7e 100644 --- a/public/static/admin.js +++ b/public/static/admin.js @@ -627,7 +627,11 @@ $(function () { /*! 注册 data-open 事件行为 */ $body.on('click', '[data-open]', function () { - $.form.href(this.dataset.open, this); + if (this.dataset.open.match(/^https?:/)) { + location.href = this.dataset.open; + } else { + $.form.href(this.dataset.open, this); + } }); /*! 注册 data-dbclick 事件行为 */