layUI数据表格可编辑扩展下拉框

简介: layUI数据表格可编辑扩展下拉框


  1. 单元格内容使用layui的 templet 功能。如: {field:'jtcyGxmc', title: '关系名称',templet: '#selectGxmc',sort:false}
  2. 代码:
layui.use(['table', 'layer', 'element', 'jquery', 'form'], function(table, layer, element, $, form){
});
  1. table.render渲染done回调
//展示已知数据
  table.render({
    elem: '#grid'
    ,cols: [[ //标题栏
      {field: 'id', title: 'ID', width: 80, sort: true}
      ,{field: 'username', title: '用户名', width: 120}
      ,{field: 'email', title: '邮箱', minWidth: 150}
      ,{field: 'city', title: '城市', width: 100}
      ,{field: 'selectName', title: '下拉框',  templet: '#selectGxmc'}
      ,{field: 'layuiData', title: '日期框', templet: '#layuiDataGxmc'}
      ,{field: 'editText', title: '编辑框', edit:'text'}
    ]]
    ,data: [{
      "id": "10001"
      ,"username": "杜甫"
      ,"email": "xianxin@layui.com"
      ,"city": "浙江杭州"
      ,"layuiData":''
      ,'editText':'1'
    },{"id": "10002"
      ,"username": "杜甫2"
      ,"email": "xianxin@layui.com"
      ,"city": "浙江杭州"
    }, {
      "id": "10003"
      ,"username": "杜甫3"
      ,"email": "xianxin@layui.com"
      ,"city": "浙江杭州"
    }]
    ,skin: 'line' //表格风格
    ,even: true
    //,page: true //是否显示分页
    //,limits: [5, 7, 10]
    //,limit: 5 //每页默认显示的数量
    ,done: function (res, curr, count) {
                count || this.elem.next('.layui-table-view').find('.layui-table-header').css('overflow', 'auto');
                layui.each($('select'), function (index, item) {
                    var elem = $(item);
                    elem.val(elem.data('value')).parents('div.layui-table-cell').css('overflow', 'visible');
                });
                // form.render();
            }
  });
  1. 模版
<script type="text/html" id="selectGxmc" >
  <select name='selectName' lay-verify='selectVerify' lay-search=''">
    <option value=""></option>
    <option value="父子">父子</option>
    <option value="母子">母子</option>
    <option value="姐弟">姐弟</option>
    <option value="弟弟">弟弟</option>
  </select>
</script>
  1. 监听
// 监听修改update到表格中
        form.on('select', function (data) {
            debugger;
            var elem = $(data.elem);
            var trElem = elem.parents('tr');
            var tableData = table.cache['grid'];
            // 更新到表格的缓存数据中,才能在获得选中行等等其他的方法中得到更新之后的值
            tableData[trElem.data('index')][elem.attr('name')] = data.value;
            // 其他的操作看需求 TODO
        });
  1. 样式调整
/* 防止下拉框的下拉列表被隐藏*/
.layui-table-cell { overflow: visible !important; }
.layui-table-box {
    overflow: visible;
}
.layui-table-body {
    overflow: visible;
}
/* 使得下拉框与单元格刚好合适 */
td .layui-form-select{
    margin-top: -10px;
    margin-left: -15px;
    margin-right: -15px;
} 


相关文章
layUI数据表格可编辑表格单元格值修改之后获取修改前的值
layUI数据表格可编辑表格单元格值修改之后获取修改前的值
628 0
|
前端开发 JavaScript 数据库
layui联动菜单搜索select表单选项的设置方法
layui联动菜单搜索select表单选项的设置方法
1012 0
|
容器
layui下拉多选框xm-select.js插件的使用
layui下拉多选框xm-select.js插件的使用
1212 0
【Layui】Layui下select下拉框不显示或没有效果
【Layui】Layui下select下拉框不显示或没有效果
|
索引
Layui 内置方法 - layer.prompt_(输入层)
Layui 内置方法 - layer.prompt_(输入层)
1237 0
|
4月前
|
JSON Java 数据格式
Spring Boot返回Json数据及数据封装
在Spring Boot中,接口间及前后端的数据传输通常使用JSON格式。通过@RestController注解,可轻松实现Controller返回JSON数据。该注解是Spring Boot新增的组合注解,结合了@Controller和@ResponseBody的功能,默认将返回值转换为JSON格式。Spring Boot底层默认采用Jackson作为JSON解析框架,并通过spring-boot-starter-json依赖集成了相关库,包括jackson-databind、jackson-datatype-jdk8等常用模块,简化了开发者对依赖的手动管理。
497 3
|
JavaScript 前端开发
layui下拉框xm-select自定义搜索使用方法
【10月更文挑战第28天】`xm - select` 是基于 Layui 的下拉框增强插件,支持自定义搜索功能。实现步骤包括:1. 引入 Layui 和 xm - select 的核心文件;2. 创建下拉框的基本 HTML 结构;3. 使用 `layui.use` 函数初始化插件并配置搜索功能;4. 可选地进行高级自定义搜索优化,如模糊匹配、多字段搜索和实时更新数据。通过这些步骤,可实现灵活的下拉框搜索功能。
2974 1
|
小程序
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
1872 0
|
JSON 数据格式
layui-Dtree树结构
这是一个关于layui-Dtree树结构的总结。Dtree是一个用于展示树形数据的组件,可以从[这个链接](https://www.wisdomelon.com/DTreeHelper/)下载。数据格式支持标准、list类型和layui+list集合,示例代码展示了如何渲染和配置这些格式。此外,Dtree提供了图标监听、节点监听和节点双击事件的回调功能。它还支持带复选框的节点,允许用户进行多选操作,并能获取选中节点的参数。最后,文章以一个简单的提交信息示例结束。
376 2
|
前端开发
layui-form
`layui-form`是一个前端表单组件,提供多种表单类型如单行、多行排列的输入框,下拉选择框(支持模糊搜索),单选框和复选框。表单元素可通过`required`和`lay-verify`属性进行必填和验证设置。编辑器如`layedit`可用于富文本输入,表单监听事件如提交和单选器可绑定回调函数进行处理。此外,能动态更新渲染表单,初始化表单数据并进行数据校验,包括自定义验证规则。
427 1