layui当点击文本框时弹出选择框,显示选择内容的例子

时间:2021-05-26

实现如图所示的功能

实现步骤:

1.html页面需要注意的内容

1)、 table

<div id="hidden1" lay-filter="hidden1" style="display: none"> <table id="department_result" lay-filter="department_result"></table></div>

2)、弹出部门表格中的按钮

<!-- 添加 弹出部门表格的 tool(里面的按钮)<script type="text/html" id="hidden1-table-tool"> <a class="layui-btn layui-btn-xs" lay-event="select">选择</a></script>

2.js实现

1)、全局设置

// 定义全局变量. employee.js 中要用到var $, admin, table, layer, laydate, form; var context_path = '/layui-curd';layui.config({ base: context_path + '/layuiadmin/'}).extend({ index : 'lib/index'}).use([ 'table', 'layer', 'laydate', 'form' ], function() { // part 1: 为全局变量赋值 $ = layui.$, admin = layui.admin, table = layui.table, layer = layui.layer, laydate = layui.laydate, form = layui.form; // part 2: 让layui渲染页面 table.render(department_result_table_options); // 渲染页面上的table. table中 的数据是通过 ajax 请求从后台获取。 // part 3: 让 layui 为页面的元素绑定事件处理函数 table.on('tool(department_result)', department_tool_event_handler); // 为页面上的table上的tool绑定事件处理函数 // part 4: 为输入框绑定光标聚焦事件的触发该函数, $('#dname').focus(depart_input_focus_handler);});

2)、table渲染

//页面上隐藏的用于弹层的所有客户的列表的相关设置var department_result_table_options = { elem: '#department_result' ,url: context_path + '/api/department' ,method : 'get' ,response : { statusName : 'code' ,statusCode : 200 ,msgName : 'msg' ,countName : 'count' ,dataName : 'data' } ,title : '部门列表' ,cols : [ [ { field : 'deptno', title : '部门编号', width : 100} ,{ field : 'dname', title : '部门名称', width : 150 } ,{ field : 'loc', title : '所在地', width : 150 } ,{ fixed : 'right', title : '操作', toolbar : '#hidden1-table-tool', width : 80 } ] ]};

3)、客户点击时弹出弹层

// “客户”输入框的光标聚焦事件的触发函数, 弹出弹层,弹层上显示所有的客户,以供选择。function depart_input_focus_handler() { layer.open({ type : 1 , area : [ '600px', '450px' ] , content : $('#hidden1') , success : function () { // 重新加载表格中的数据 table.reload('department_result', department_result_table_options); $('#hidden1').css('display', 'block'); } });}

4)、客户点击选择按钮时数据回填

//点击弹出的“客户信息”弹层上的表格中“选中”按钮的触发函数function department_tool_event_handler(obj) { console.info(obj); var data = obj.data; switch (obj.event) { case 'select': $('#dname').val(data.dname); layer.close(layer.index); break; }}

3.后台代码实现略

以上这篇layui当点击文本框时弹出选择框,显示选择内容的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章