layui中弹出层的两种表达方式
方式一:
定义js中定义html变量
方式二:
设置div :hidden:hidden 布局
数据表格自适应大小:
代码:
<style>
.btn-container { margin-bottom: 10px; }
.layui-table-cell .layui-form-checkbox[lay-skin=primary] { top: 5px; }
</style> <div class="layui-fluid">
<div class="layui-card">
<div class="layui-card-header">xx记录</div>
<div class="layui-card-body">
<div class="btn-container layui-form">
<!-- 组别搜索 -->
<div class="btn-container">
<button class="layui-btn layui-btn-normal" onclick="add()">添加xx记录</button>
</div>
<table id="table" lay-filter="table" lay-data="{id: table}"></table>
</div>
</div>
</div>
</div> <div class="layui-card-body" id="record-user" hidden="hidden">
<div class="layui-form layui-form-pane" lay-filter = 'datafile'>
<div class="layui-form-item">
<label class="layui-form-label">xx账号</label>
<div class="layui-input-inline">
<select name="xxxx" lay-verify="xxx">
<option value="">请选择xx账号</option>
{foreach $xxx as $key => $vo}
<option value="{$vo.id}">{$vo.xxxx}</option>
{/foreach}
</select>
</div>
</div> <div class="layui-form-item" >
<label class="layui-form-label">xx信息</label>
<div class="layui-input-inline">
<input type="text" name="xxx" required placeholder="请输入xx信息" class="layui-input">
</div>
</div> </div>
</div> <script>
layui.use(['table', 'form'], function() {
var table = layui.table;
var form = layui.form; var tableIns = table.render({
elem: "#table",
url: "{:url('xxx')}",
page: true,
//这是重点
cellMinWidth:70,
done: function(res) {
},
cols: [[
// {type: 'checkbox', fixed: 'left'},
{field: 'id', title: 'ID', sort: true, align: 'center'},
{field: 'xx', title: 'xx', sort: true, align: 'center'},
{field: 'xx', title: 'xx', sort: true, align: 'center'},
{field: 'xx', title: 'xx', sort: true, align: 'center'},
{title: '操作', align: 'center', sort: true, templet: '#operation', fixed: 'right'}
]]
}); // 监听工具栏
table.on('tool(table)', function(o) {
var d = o.data,
lEv = o.event,
tr = o.tr if (parseInt('{$xx_power}') != 0) {
layer.msg('您没有权限操作', { icon: 5, time: 1200 });
return false;
}
if (lEv == 'detail') pop(d);
if (lEv == 'deleted') deleted(d);
})
// 类型搜索
form.on('select(type)', function(data) {
search(tableIns);
}); $(document).on('click','#seach',function(){
nameseach(tableIns);
}); }); // 添加
var add = function() {
var title = 'xx记录添加'
layer.open({
type:1,
title: title,
content: $('#record-user'),
btn:['确定','取消'],
area:['350px','35%'],
yes:function(res){
// 判断输入框是否为空
if ($('[name=xxx]').val().length == 0)
{
layer.alert('不能存在空的输入框', { icon: 5 });
return ;
}
var d = {
xx: $('[name=xx]').val(),
xx: $('[name=xx]').val(),
}
var u = '{:url("xx")}' layer.load(2);
$.post(u, d, function(res) {
// 清除弹出层
layer.closeAll()
if (res.code == 0) {
layer.msg('添加成功', {icon: 6, time: 1500}, function() {
window.location.reload()
})
return ;
}
layer.msg('添加失败', {icon: 5, time: 1500})
})
}
});
} // 修改
var pop = function(data) {
var title ='xx编辑'
var html = '<div class="layui-form">'
html += '<div class="layui-form-item" >'
html += '<label class="layui-form-label">xx账户</label>'
html += '<div class="layui-input-block">'
html += '<input type="text" name="xx" required placeholder="xxxxx" class="layui-input" disabled>'
html += '</div>'
html += '</div>'
html += '<div class="layui-form-item">'
html += '<label class="layui-form-label">xxx</label>'
html += '<div class="layui-input-inline">'
html += '<input type="text" name="xx" required placeholder="xxxx" class="layui-input">'
html += '</div>'
html += '</div>'
html += '</div>' layer.open({
title: title,
content: html,
yes: function(res) {
// 判断输入框是否为空
if ($('[name=xx]').val().length == 0)
{
layer.alert('不能存在空的输入框', { icon: 5 });
return ;
}
var d = {
xxx: $('[name=xxx]').val(),
}
var u = '{:url("xxx")}'
d.id = data.id
layer.load(2);
$.post(u, d, function(res) {
// 清除弹出层
layer.closeAll()
if (res.code == 0) {
layer.msg('修改成功', {icon: 6, time: 1500}, function() {
window.location.reload()
})
return ;
}
layer.msg('修改失败', {icon: 5, time: 1500})
})
}
});
// 设置数据
if (data != null) {
$('[name=xxxx]').val(data.xxx)
$('[name=xxx]').val(data.xxx)
}
} // 删除
var deleted = function(data) {
layer.confirm('确认删除该数据?', function() {
layer.closeAll()
$.ajax({
url : "{:url('xxx')}",
type : "POST",
data : {
'xx' : data.xx,
},
dataType : 'json' ,
success : function(res){
console.log(res);
if(res.code == 0){
layer.msg("删除成功", {icon: 6}, function() {
location.reload();
});
} else{
layer.msg("删除失败", {icon: 5});
}
}
});
});
}
</script>
<script type="text/html" id="operation">
<a class="layui-btn layui-btn-xs" lay-event="detail">编辑</a>
<a class="layui-btn layui-btn-xs layui-btn-danger" lay-event="deleted">删除</a>
</script>
layui中弹出层的两种表达方式的更多相关文章
- Assignment写作需要掌握的两种表达方式
在正式开始写Assignment之前都会进行文献检索和整理,选择适合Assignment选题的文献资料进行阅读和引用.对于文献中与自己的观点高度相关的参考资料要如何具体引用,而不造成抄袭或者增加文章的 ...
- AC自动机入门经典题目(两种表达方式)
Keywords Search 指针方式: /* Keywords Search */ # include <iostream> # include <stdio.h> # i ...
- Mybatis系列全解(七):全息视角看Dao层两种实现方式之传统方式与代理方式
封面:洛小汐 作者:潘潘 一直以来 他们都说为了生活 便追求所谓成功 顶级薪水.名牌包包 还有学区房 · 不过 总有人丢了生活 仍一无所获 · 我比较随遇而安 有些事懒得明白 平日里问心无愧 感兴趣的 ...
- layui弹出层之应用实例讲解
从酒店管理系统到智能门锁及其现在的资源共享平台,layui框架,我们团队用的比较多的就是这个layui弹出层. layui弹出层,除了页面iframe层我们比较常用还有就是表单校验和其他相关的友好提示 ...
- Layui弹出层、日期和时间选择、即时通讯、分页
Layui弹出层.日期和时间选择.即时通讯.分页 弹层组件文档 - layui.layer 对于弹出层的感觉是:layer 至今仍作为 layui 的代表作,她的受众广泛并非偶然,而是这数年来的坚持. ...
- Swing中弹出对话框的几种方式_JOptionPane.showMessageDialog等详解
Swing中弹出对话框的几种方式_JOptionPane.showMessageDialog等详解 在swing中,基于业务的考量,会有对话框来限制用户的行为及对用户的动作进行提示. Swing中 ...
- MyBatis开发Dao层的两种方式(原始Dao层开发)
本文将介绍使用框架mybatis开发原始Dao层来对一个对数据库进行增删改查的案例. Mapper动态代理开发Dao层请阅读我的下一篇博客:MyBatis开发Dao层的两种方式(Mapper动态代理方 ...
- MyBatis开发Dao层的两种方式(Mapper动态代理方式)
MyBatis开发原始Dao层请阅读我的上一篇博客:MyBatis开发Dao层的两种方式(原始Dao层开发) 接上一篇博客继续介绍MyBatis开发Dao层的第二种方式:Mapper动态代理方式 Ma ...
- Layui 弹出层组件——layer的模块化开发实例应用
Layui 弹出层组件——layer的模块化开发实例应用 1.首先在package.json中引入layer组件依赖 2.在源码中应用这个依赖 3.在源码中编写代码应用此组件 4.效果验证:点击日历上 ...
随机推荐
- Java IO 导入导出TXT文件
字节流和字符流 区别: 读写单位:顾名思义,字节流以字节(byte)为读写单位,而字符流以字符为读写单位,根据码表映射字符,一次可能读入多个字符. 处理对象:字节流可以处理所有类型的数据(包括图片等) ...
- 带着萌新看springboot源码8(spring ioc源码 完)
上一节说到实例化了所有的单实例Bean,后面还有一步遍历 12.完成容器刷新(finishRefresh();) 那个和生命周期有关的后置处理器类型是LifecycleProcessor:监听器原理我 ...
- 痞子衡嵌入式:并行接口NAND互操作性标准(JEDEC-JESD230)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是JESD230标准. 众所周知,最早也最流行的Raw NAND接口标准是ONFI标准,痞子衡在 并行接口NAND标准(ONFI)及SLC ...
- 深度学习框架Keras介绍及实战
Keras 是一个用 Python 编写的高级神经网络 API,它能够以 TensorFlow, CNTK, 或者 Theano 作为后端运行.Keras 的开发重点是支持快速的实验.能够以最小的时延 ...
- 大前端的自动化工厂(1)——Yeoman
一.Yeoman是什么 Yeoman是现代化前端项目的脚手架工具,用于生成包含指定框架结构的工程化目录结构.它是整个前端自动化工厂的第一站. 从个人使用者的角度来看,Yeoman的地位有些鸡肋,因为流 ...
- javascript小实例,阻止浏览器默认行为,真的能阻止吗?支持IE和标准浏览器的阻止默认行为的方法
看到这标题,是不是有点逆天的感觉,总感觉好狂拽炫酷,耳边隐隐约约传来一个声音:你这么叼,你咋不上天呢! ~~ 额,好吧! 话入正题,我为什么会提出这么一个问题呢? 阻止浏览器默认行为,真的能阻止吗?那 ...
- 第10章 使用密码保护API - Identity Server 4 中文文档(v1.0.0)
OAuth 2.0资源所有者密码授权允许客户端向令牌服务发送用户名和密码,并获取代表该用户的访问令牌. 除了无法承载浏览器的旧应用程序之外,规范通常建议不要使用资源所有者密码授予.一般来说,当您要对用 ...
- C# 以管理员权限删除文件
前言 通过后台,想删除C盘下”C:\\Windows\\winsxs\\Backup“的缓存文件. 然后提示对路径“C:\\Windows\\winsxs\\Backup\\amd64_hid-use ...
- 关于火狐和IE下href="javascript:void(0)"兼容性的问题
今天在开发中发现,使用如下方式的链接.在Chrome中点击后行为符合预期,但在IE下会新开标签卡(根据参考资料,Firefox中有相同问题). 经过排查,发现是href="javascrip ...
- webpack入门教程--2
这次是创建第二个JS文件. 我们还是在app文件夹中创建一个叫做book2.js的JS文件,并在其中输入以下代码: module.exports = "It works from book2 ...