rabin 2 years ago
parent
commit
33e18f4b32

+ 1 - 1
assets/layadmin/html/home.html

@@ -57,7 +57,7 @@
   <script>
   <script>
     layui.config({
     layui.config({
         base: '../script/lib/layui/admin/' //静态资源所在路径
         base: '../script/lib/layui/admin/' //静态资源所在路径
-        ,version:true
+        ,version:false
     }).extend({
     }).extend({
         index: 'lib/index' //主入口模块
         index: 'lib/index' //主入口模块
     }).use('index');
     }).use('index');

+ 1 - 0
assets/layadmin/html/project/database/list.html

@@ -179,6 +179,7 @@
   <script>
   <script>
   layui.config({
   layui.config({
     base: '../script/lib/layui/admin/' //静态资源所在路径
     base: '../script/lib/layui/admin/' //静态资源所在路径
+    ,version:true
   }).extend({
   }).extend({
     formSelects: 'plugin/formselects/formselects',
     formSelects: 'plugin/formselects/formselects',
     index: 'lib/index' //主入口模块
     index: 'lib/index' //主入口模块

+ 33 - 2
src/Database.php

@@ -605,7 +605,13 @@ class Database
                             $config['manage']['search']['exist'][$k]['lang'] = $v['name'];
                             $config['manage']['search']['exist'][$k]['lang'] = $v['name'];
                         }
                         }
 
 
-                        if (isset($v['option']) && strpos($v['search'], 'select') !== false) {
+                        if (isset($v['option']) && strpos($v['search'], 'selects') !== false) {
+                            $config['manage']['search']['selects'][$k]['option'] = $v['option'];
+                            $config['manage']['search']['selects'][$k]['lang'] = $v['name'];
+                            if (isset($v['default'])) {
+                                $config['manage']['search']['selects'][$k]['default'] = $v['default'];
+                            }
+                        } elseif (isset($v['option']) && strpos($v['search'], 'select') !== false) {
                             $config['manage']['search']['select'][$k]['option'] = $v['option'];
                             $config['manage']['search']['select'][$k]['option'] = $v['option'];
                             $config['manage']['search']['select'][$k]['lang'] = $v['name'];
                             $config['manage']['search']['select'][$k]['lang'] = $v['name'];
                             if (isset($v['default'])) {
                             if (isset($v['default'])) {
@@ -897,7 +903,7 @@ class Database
      *
      *
      * @return array
      * @return array
      */
      */
-    public function list_search_select(&$result, $search, $name, $lang, $option, $default = false, $bind = array(), $parent = '')
+    public function list_search_select(&$result, $search, $name, $lang, $option, $default = false, $bind = array(), $parent = '', $mul = false)
     {
     {
         $value = array();
         $value = array();
         if (strpos($lang, '-')) {
         if (strpos($lang, '-')) {
@@ -917,6 +923,10 @@ class Database
             $value['bind'] = $bind;
             $value['bind'] = $bind;
         }
         }
         $value['parent'] = $parent;
         $value['parent'] = $parent;
+        if ($mul) {
+            $value['update'] = 'selects';
+            $value['match'] = 'option';
+        }
         $result .= Html::select($value, false);
         $result .= Html::select($value, false);
     }
     }
 
 
@@ -1230,6 +1240,27 @@ class Database
                 }
                 }
             }
             }
 
 
+            if (isset($config['manage']['search']['selects'])) {
+                $this->list_search_br($result);
+                foreach ($config['manage']['search']['selects'] as $k => $v) {
+                    $bind = array();
+                    $parent = '';
+                    $option = $this->option($v['option']);
+                    if (isset($config['manage']['search_parent'][$k])) {
+                        $bind = array
+                        (
+                            'onchange',
+                            'setOption',
+                            'search_option_' . $config['manage']['search_parent'][$k]
+                        );
+                    }
+                    elseif (isset($config['manage']['search_child'][$k])) {
+                        $parent = $config['manage']['search_child'][$k];
+                    }
+                    $this->list_search_select($result, $search, $prefix . 'option_' . $k, $v['lang'], $option, $v['default'], $bind, $parent, true);
+                }
+            }
+
             if (isset($config['manage']['search']['select'])) {
             if (isset($config['manage']['search']['select'])) {
                 $this->list_search_br($result);
                 $this->list_search_br($result);
                 foreach ($config['manage']['search']['select'] as $k => $v) {
                 foreach ($config['manage']['search']['select'] as $k => $v) {

+ 5 - 0
src/Lib/Input.php

@@ -982,6 +982,11 @@ class Input
             if ($param['match'] != 'option') {
             if ($param['match'] != 'option') {
                 $xm .= ' lay-verify="' . $param['name'] . '"';
                 $xm .= ' lay-verify="' . $param['name'] . '"';
             }
             }
+
+            if ($param['update'] == 'selects' && isset($param['lang']) && $param['lang']) {
+                $xm .= ' xm-select-placeholder="'.$param['lang'].'"';
+                unset($param['lang']);
+            }
         } else {
         } else {
             $xm .= ' xm-select-radio=""';
             $xm .= ' xm-select-radio=""';
         }
         }