Layui项目实战干货总结(精品)
写代码时遇到的知识点拿出来分享。
1.layer弹出层显示在top顶层
// 监听工具条
table.on('tool(tb-book)', function (obj) {
var data = obj.data;
// 修改
if (obj.event === 'edit') {
top.layer.open({
type: 2,
offset: '10px',
title: "修改图书",
area: ['800px', '660px'],
content: ['bookEdit/'+data.id]
});
}
});
2.刷新同级iframe中table数据
//监听表单提交
// 修改
form.on('submit(saveBook)', function (data) {
//layer.alert(JSON.stringify(data.field));
data.field.categoryName=$("#categoryCode option:selected").text();
data.field.languageName=$("#languageCode option:selected").text();
data.field.locationName=$("#locationCode option:selected").text();
data.field.publisherName=$("#publisherCode option:selected").text();
$.ajax({
url: '/api/book/save',
type: 'POST',
contentType: "application/json",
dataType: "json",
data: JSON.stringify(data.field),
success: function (result) {
if (result.code == 200) {
// layer.msg("修改成功!", {icon: 6});
cleanForm("#saveBook");
if (data.field.id.length > 0) {
layer.closeAll();//关闭所有的弹出层
}
$(".layui-show").find("iframe")[0].contentWindow.userTable.reload();
} else {
layer.alert(result.message);
}
}
});
return false;
});
3.layui单选框radio的使用

<div class="layui-form-item">
<label class="layui-form-label">性别</label>
<div class="layui-input-block">
<input type="radio" id="male" name="sex" value="男" title="男">
<input type="radio" id="female" name="sex" value="女" title="女">
</div>
</div>
form.on('radio',function (data) {
$("input[name='sex']").prop("checked",false);
$(data.elem).prop("checked",true);
});
if(data.sex=='男'){
$("#male").prop("checked",true);
$("#female").prop("checked",false);
}
if(data.sex=='女'){
$("#male").prop("checked",false);
$("#female").prop("checked",true);
}
form.render(); //更新全部
4.使用日期控件

<div class="layui-inline">
<label class="layui-form-label">借出日期</label>
<div class="layui-inline">
<input type="text" name="borrowDate" id="borrowDate" required lay-verify="required" autocomplete="off"
class="layui-input">
</div>
</div>
laydate.render({
elem: '#borrowDate',
type: 'date',
format:"yyyy-MM-dd",
value: new Date()
});
5.表格中格式化日期列
{field: 'borrowDate', title: '借阅日期', width: 120,templet:'<div>{{ layui.util.toDateString(d.borrowDate, "yyyy-MM-dd") }}</div>'}
6.日期选择后的事件函数
laydate.render({
elem: '#borrowDate',
type: 'date',
format:"yyyy-MM-dd",
value: borrowTime,
done: function(value, date, endDate){
returnTime=plusDays(new Date(value),30);
alert(returnTime.Format("yyyy-MM-dd"));
$("#returnDate").val(returnTime.Format("yyyy-MM-dd"));
}
});
7.表格列不同值设置不同颜色

, {field: 'borrowStatus', title: '状态', width: 80,templet:showStatus}
// 借阅状态
function showStatus(data) {
var status = data.borrowStatus;
var result;
if (status == 0) {
result = '<a class="" style="color:#FF5722">未还</a>';
}
if (status == 1) {
result = '<a class="" style="color:#009688">已还</a>';
}
if (status == 2) {
result = '<a class="" style="color:#FF5722">逾期</a>';
}
return result;
}
8.控制上传文件类型
这里以控制职能上传xls|xlsx文件为例。
upload.render({
elem: '#uploadExcel' //绑定元素
,url: 'api/student/upload' //上传接口
,accept: 'file' //普通文件
,acceptMime:'application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
,exts: 'xls|xlsx' //只允许上传xls文件
,before:function (obj) {
layer.load(); //上传处理loading
}
,done: function(res){
// 上传完毕回调
layer.closeAll('loading'); //关闭loading
if(res.code==200){
userTable.reload();
layer.msg("导入成功!");
}else {
layer.msg(res.message);
}
}
,error: function(){
//请求异常回调
layer.closeAll('loading'); //关闭loading
layer.msg("导入失败!");
}
});
Layui项目实战干货总结(精品)的更多相关文章
- 【WEB API项目实战干货系列】- 导航篇(十足干货分享)
在今天移动互联网的时代,作为攻城师的我们,谁不想着只写一套API就可以让我们的Web, Android APP, IOS APP, iPad APP, Hybired APP, H5 Web共用共同的 ...
- 【WEB API项目实战干货系列】- API登录与身份验证(三)
上一篇: [WEB API项目实战干货系列]- 接口文档与在线测试(二) 这篇我们主要来介绍我们如何在API项目中完成API的登录及身份认证. 所以这篇会分为两部分, 登录API, API身份验证. ...
- 【WEB API项目实战干货系列】- 接口文档与在线测试(二)
上一篇: [WEB API项目实战干货系列]- Web API 2入门(一) 这一篇我们主要介绍如何做API帮助文档,给API的调用人员介绍各个 API的功能, 输入参数,输出参数, 以及在线测试 A ...
- 【WEB API项目实战干货系列】- API访问客户端(WebApiClient适用于MVC/WebForms/WinForm)(四)
这几天没更新主要是因为没有一款合适的后端框架来支持我们的Web API项目Demo, 所以耽误了几天, 目前最新的代码已经通过Sqlite + NHibernate + Autofac满足了我们基本的 ...
- 【WEB API项目实战干货系列】- WEB API入门(一)
这篇做为这个系列的第一篇,做基本的介绍,有经验的人可以直接跳到第二部分创建 ProductController. 创建 Web API 项目 在这里我们使用VS2013, .NET 4.5.1创建 ...
- 【腾讯Bugly干货分享】React Native项目实战总结
本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/577e16a7640ad7b4682c64a7 “8小时内拼工作,8小时外拼成长 ...
- 【无私分享:ASP.NET CORE 项目实战】目录索引
简介 首先,我们的 [无私分享:从入门到精通ASP.NET MVC] 系列已经接近尾声,希望大家在这个过程中学到了一些思路和方法,而不仅仅是源码. 因为是第一次写博客,我感觉还是比较混乱的,其中 ...
- 项目实战12.1—企业级监控工具应用实战-zabbix安装与基础操作
无监控,不运维.好了,废话不多说,下面都是干货. 警告:流量党勿入,图片太多!!! 项目实战系列,总架构图 http://www.cnblogs.com/along21/p/8000812.html ...
- 项目实战12.2—企业级监控工具应用实战-zabbix操作进阶
无监控,不运维.好了,废话不多说,下面都是干货. 流量党勿入,图片太多!!! 项目实战系列,总架构图 http://www.cnblogs.com/along21/p/8000812.html 一.U ...
- 洗礼灵魂,修炼python(82)--全栈项目实战篇(10)—— 信用卡+商城项目(模拟京东淘宝)
本次项目相当于对python基础做总结,常用语法,数组类型,函数,文本操作等等 本项目在博客园里其他开发者也做过,我是稍作修改来的,大体没变的 项目需求: 信用卡+商城: A.信用卡(类似白条/花呗) ...
随机推荐
- [转帖]OceanBase实验4:迁移MySQL数据到OceanBase集群
服务器环境 1)12核48G,操作系统为centos 7.9系统,单节点三副本1-1-1集群. 2)源MySQL数据库:与OceanBase同一台服务器,版本为MySQL 5.7. 1.使用 mysq ...
- [转帖]《Linux性能优化实战》笔记(七)—— CPU瓶颈快速分析及性能优化思路
相当于是前面篇章的小结 一. CPU 性能指标 常见指标包括: 平均负载 CPU 使用率(user.iowait.system.软硬中断等) 进程上下文切换(自愿.非自愿) CPU 缓存的命中率 CP ...
- 【转帖】GPT4All开源的聊天机器人
GPT4All是一个开源的聊天机器人,它基于LLaMA的大型语言模型训练而成,使用了大量的干净的助手数据,包括代码.故事和对话.它可以在本地运行,不需要云服务或登录,也可以通过Python或Types ...
- [转帖]CPU计算性能speccpu2006的测试方法及工具下载
https://www.yii666.com/blog/335517.html CPU计算性能speccpu2006的测试方法及工具下载 简介 测试原理 目录结构 测试方法 基准测试项解析 测试结果 ...
- HTTPS下tomcat与nginx的前端性能比较
HTTPS下tomcat与nginx的前端性能比较 摘要 之前比较http的web服务器的性能. 发现nginx 比 tomcat 要好 50% 然后想到, https的情况下不知道两者有什么区别 所 ...
- [转帖]linux学习:sed与awk与tr用法整理
https://www.cnblogs.com/LO-gin/p/6882490.html 流编辑器:sed 语法:sed [-hnV][-e<script>][-f<script文 ...
- Oracle 设置白名单过滤
最近有一个需求 要求开发人员不能随便连接测试的数据库 又不想太过复杂,部分人还得进行连结. 查了下往上是有方案的: 就是 TCP_VALIDNODE_CHECKING 参数 解决方法和说明如下 来源 ...
- 计划任务方式定期获取jvm dump的方法
说明 产品最近有一些问题,想着能够每隔一段时间抓取一下dump文件. 需求 可以定期抓取, 需要注意磁盘空间的使用. 实现方法 定时任务使用 crontab 计划任务来做 预定义获取jvm dump的 ...
- adb驱动安装
学会adb,工资涨一千 win系统安装 1.安装adb首先需要去官网下载adb安装包,下载完成后解压会有一个adb目录以及目录下四个文件 2.然后将adb目录mv到C:\Windows下,配置环境变量 ...
- 【dp,建模】AGC032D Rotation Sort
Problem Link 有一个长为 \(n\) 的排列 \(p\),给定 \(A,B\),你每次可以做以下两种操作之一: 选取 \(l,r\),将 \(p[l:r]\) 循环右移,代价为 \(A\) ...