<bdo id='ewY3s'></bdo><ul id='ewY3s'></ul>

<legend id='ewY3s'><style id='ewY3s'><dir id='ewY3s'><q id='ewY3s'></q></dir></style></legend>

<small id='ewY3s'></small><noframes id='ewY3s'>

  1. <tfoot id='ewY3s'></tfoot>

      <i id='ewY3s'><tr id='ewY3s'><dt id='ewY3s'><q id='ewY3s'><span id='ewY3s'><b id='ewY3s'><form id='ewY3s'><ins id='ewY3s'></ins><ul id='ewY3s'></ul><sub id='ewY3s'></sub></form><legend id='ewY3s'></legend><bdo id='ewY3s'><pre id='ewY3s'><center id='ewY3s'></center></pre></bdo></b><th id='ewY3s'></th></span></q></dt></tr></i><div id='ewY3s'><tfoot id='ewY3s'></tfoot><dl id='ewY3s'><fieldset id='ewY3s'></fieldset></dl></div>

      layui formSelects实现下拉框select多选,并且编辑时候回显

      时间:2023-11-09

        <small id='bkPBb'></small><noframes id='bkPBb'>

          <tbody id='bkPBb'></tbody>
        <tfoot id='bkPBb'></tfoot>
        <i id='bkPBb'><tr id='bkPBb'><dt id='bkPBb'><q id='bkPBb'><span id='bkPBb'><b id='bkPBb'><form id='bkPBb'><ins id='bkPBb'></ins><ul id='bkPBb'></ul><sub id='bkPBb'></sub></form><legend id='bkPBb'></legend><bdo id='bkPBb'><pre id='bkPBb'><center id='bkPBb'></center></pre></bdo></b><th id='bkPBb'></th></span></q></dt></tr></i><div id='bkPBb'><tfoot id='bkPBb'></tfoot><dl id='bkPBb'><fieldset id='bkPBb'></fieldset></dl></div>
              <bdo id='bkPBb'></bdo><ul id='bkPBb'></ul>

              • <legend id='bkPBb'><style id='bkPBb'><dir id='bkPBb'><q id='bkPBb'></q></dir></style></legend>

                1、首先引入formSelects相关配置:引入formSelects-v4的js、css,如果采用第三步的方式引入也是可以的,这里推荐第三步layui.config方式引入。
                <link rel="stylesheet" href="/static/layui/css/formSelects-v4.css"/>
                <script src="/static/layui/js/formSelects-v4.js"></script>
                
                2、定义一个下拉框
                <div class="layui-inline">
                                  <label class="layui-form-label">地区</label>
                                <div class="layui-input-inline" style="width:350px">
                                    <select name="deptId" id="deptId" lay-filter="deptId" lay-verify="required" 
                					lay-reqtext="地区不能为空" xm-select="select1" xm-select-height="36px"></select>
                                </div>
                              </div>  
                
                3、js配置,注意:base: ‘/static/layui/js/’ 一定要与你引入的路径一致,并且写全,不然不起作用
                <script>
                //全局定义一次, 加载formSelects
                layui.config({
                    base: '/static/layui/js/' //此处路径请自行处理, 可以使用绝对路径
                }).extend({
                    formSelects: 'formSelects-v4'
                });
                //加载模块
                layui.use(['jquery', 'formSelects'], function(){
                	form = layui.form;
                    var layer = layui.layer,
                     $ = layui.$;
                    var formSelects = layui.formSelects;
                    formSelects.data('select1', 'local', {
                            arr: [
                            {"name": "随笔", "value": 1},
                            {"name": "测试", "value": 2},
                            {"name": "博客日志", "value": 3}
                            ]
                        });
                    
                });
                </script>
                
                4、实现从后端查询数据到下拉框,并且编辑时候回显到下拉框
                <script>
                //全局定义一次, 加载formSelects
                layui.config({
                    base: '/static/layui/js/' //此处路径请自行处理, 可以使用绝对路径
                }).extend({
                    formSelects: 'formSelects-v4'
                });
                //加载模块
                	layui.use([ 'jquery', 'formSelects' ], function() {
                		form = layui.form;
                		var layer = layui.layer, $ = layui.$;
                		var formSelects = layui.formSelects;
                
                		var formData = parent.formData;//拿到父页面数据
                
                		$.ajax({
                			url : '/stress/taskprogress/getdept',
                			dataType : 'json',
                			type : 'get',
                			success : function(data) {
                				var keys = [];
                				$('#deptId').empty();
                				$('#deptId').append(new Option("请选择机构", ""))
                				$.each(data.data, function(index, item) {
                					var temp = temp = {
                							"name" : item.deptName,
                							"value" : item.deptId,
                							"children" : fn(item.children)
                						//这里需要注意,value应该不同,否则在下拉框选择数据的时候,选择上的数据回事一样的
                						}
                					if (formData != null) {  //编辑时候回显
                						var deptId = formData.deptId.split(",");
                						for (var i = 0; i < deptId.length; i++) {
                							if (item.deptId == deptId[i]) {
                								temp = {
                									"name" : item.deptName,
                									"value" : item.deptId,
                									"selected" : "selected",
                									"children" : fn(item.children)
                								//这里需要注意,value应该不同,否则在下拉框选择数据的时候,选择上的数据回事一样的
                								}
                								
                							} 
                						}
                					}
                
                					keys.push(temp);
                
                				});
                
                				//渲染select
                				form.render("select");
                				formSelects.data("select1", "local", {
                					arr : keys
                				});
                
                			}
                		});
                
                          //递归求字选择项
                		function fn(children) {
                			var child = [];
                			if (children == null) {
                				return child;
                			}
                			$.each(children, function(index, item) {
                				var temp = {
                					"name" : item.deptName,
                					"value" : item.deptId,
                					"children" : fn(item.children)
                				//这里需要注意,value应该不同,否则在下拉框选择数据的时候,选择上的数据回事一样的
                				}
                				
                				if (formData != null) {
                					var deptId = formData.deptId.split(",");
                					for (var i = 0; i < deptId.length; i++) {
                						if (item.deptId == deptId[i]) {
                							temp = {
                								"name" : item.deptName,
                								"value" : item.deptId,
                								"selected" : "selected",
                								"children" : fn(item.children)
                							//这里需要注意,value应该不同,否则在下拉框选择数据的时候,选择上的数据回事一样的
                							}
                							
                						} 
                					}
                				}
                				
                				child.push(temp);
                			});
                			return child;
                		}
                
                	});
                </script>
                
                 
                上一篇:父窗口获取layer.open()打开的子窗口的数据 下一篇:没有了

                相关文章

                • <bdo id='gTFUc'></bdo><ul id='gTFUc'></ul>

                <small id='gTFUc'></small><noframes id='gTFUc'>

                <tfoot id='gTFUc'></tfoot>
                <legend id='gTFUc'><style id='gTFUc'><dir id='gTFUc'><q id='gTFUc'></q></dir></style></legend>

                <i id='gTFUc'><tr id='gTFUc'><dt id='gTFUc'><q id='gTFUc'><span id='gTFUc'><b id='gTFUc'><form id='gTFUc'><ins id='gTFUc'></ins><ul id='gTFUc'></ul><sub id='gTFUc'></sub></form><legend id='gTFUc'></legend><bdo id='gTFUc'><pre id='gTFUc'><center id='gTFUc'></center></pre></bdo></b><th id='gTFUc'></th></span></q></dt></tr></i><div id='gTFUc'><tfoot id='gTFUc'></tfoot><dl id='gTFUc'><fieldset id='gTFUc'></fieldset></dl></div>