layui使用笔记

layui目录介绍:

 ├─css //css目录
  │  │─modules //模块css目录(一般如果模块相对较大,我们会单独提取,比如下面三个:)
  │  │  ├─laydate
  │  │  ├─layer
  │  │  └─layim
  │  └─layui.css //核心样式文件
  ├─font  //字体图标目录
  ├─images //图片资源目录(目前只有layim和编辑器用到的GIF表情)
  │─lay //模块核心目录
  │  └─modules //各模块组件
  │─layui.js //基础核心库
  └─layui.all.js //包含layui.js和所有模块的合并文件

layui可以采用全部加载或者按需加载两种方式使用
如果想要提高性能可以按需加载:
引入layui.js文件

      <script src="/lib/layui/layui.js"></script>

使用时加载自己需要的模块就行

layui.use(['jquery', 'layedit', 'form'], function () {
    var $ = layui.jquery,
        layedit = layui.layedit,
        form = layui.form,
        layer = layui.layer;
})

如果觉得麻烦,也可以直接引入全部:

 <script src="/lib/layui/layui.all.js"></script>

这样就可以直接使用全部模块了;
layui自带了稳定jquery模块,你可以使用layui中的jquery,也可以导入其他的jquery库;

因为layui是重新渲染了页面的,所以在数据更新时会出现很多问题。
使用笔记:

常用layui属性:

lay-filter 一般用于监听
lay-verify 用于表单验证
lay-submit 表单提交

1、 表单元素初始化值
form.val('addArticleForm', {  //form的lay-filter属性
        'remarks': sortid        //元素的name属性
    });
2、监听事件
 //release 为元素的lay-filter属性
//submit为监听的事件或者标签
form.on('submit(release)', function (data) {
  
});
3、表单验证(表单验证要写在表单提交之前,在提交时会自动验证)
form.verify({
        title: function (val) {
            if (val.trim().length == 0) {
                return '文章标题不能为空';
            }
        },
    });
4、表单提交
(1)form提交
form.on('submit(release)', function (data) {
  var field = data.field;

});
(1)ajax提交(return false 代表禁止form提交)
form.on('submit(release)', function (data) {
  var field = data.field;
  retrun false;
});
5、分页器
  laypage.render({
        elem: 'indexPage' //注意,这里的 indexPage是 ID,不用加 # 号
        , count: count //数据总数,从服务端得到
        , theme: '#CDB5CD'  //颜色
        , limit: 2  //每页显示数量
        , curr: 1//获取起始页
        , prev: '上一页'
        , next: '下一页'
        , skip: true 
        , layout: ['count', 'prev', 'page', 'next', 'skip']
        , jump: function (obj, first) {
            //首次不执行
            //do something
            if (!first) {
                location.href = "/admin/Index/toArticles_drafts?sortid=" + sortid + "&page=" + obj.curr;
            }
        }
    });
6、layui表格
table_sort = table.render({
        id: 'sortid',  //这里可以作为保留字段,当你不想将某个字段显示出来却要使用它时,可以将此字段写在这里,用逗号隔开
        elem: '#sort_table',
        cols: [[
            {title: '序号', type: 'numbers', width: '10%', align: 'center', fixed: 'left'}
            , {field: 'sortname', title: '分类名', align: 'center', width: '25%'}
            , {field: 'createtime', title: '创建时间', align: 'center', width: '25%'}
            , {title: '操作', align: 'center', toolbar: '#bar'}
        ]],
        url: '/admin/ArticlesSort/getArticlesSortByPage',
        where: {  //参数
            key: ''
        },
        page: true,  //开启分页
        limit: 10,
        limits: [10, 20, 30, 40],
        loading: true,  //加载动画
        text: {
            none: '没有找到数据QAQ'
        }
    });
7、layui弹出层

基础参数

layuiicon 显示的icon

1
image.png

2
image.png

3
image.png

4
image.png

5
image.png

6
image.png
time 自动关闭所需毫秒

例:time: 5000,即代表5秒后自动关闭,注意单位是毫秒(1秒=1000毫秒),如果不写一般默认是为0,提示框默认为3000

anim 弹出动画

anim: -1 不显示动画
anim: 0 平滑放大。默认
anim: 1 从上掉落
anim: 2 从最底部往上滑入
anim: 3 从左滑入
anim: 4 从左翻滚
anim: 5 渐显
anim: 6 抖动

详细参数见文档:https://www.layui.com/doc/modules/layer.html

(1)带输入框的弹出层(可用于敏感操作前的密码验证)
//formType: 0(文本)默认1(密码)2(多行文本)
layer.prompt({formType: 1,title: "请输入密码"}, function (val, index) {
 if (val == "xxx") {
    layer.msg("密码正确")
}else{
   layer.msg("密码错误")
}
});
(2)layui确认提示框
layer.confirm("确定要公之于众吗QVQ?", {btn: ['是的,我确定', '还是算了吧']}, function (index) {
 layer.close(index);
})

layer.confirm("执行哪个操作?", {btn: ['A操作', 'B操作']},
 function () {
  //A操作
},
function () {
//B操作
})

layer.confirm('执行哪个操作?', {
  btn: ['按钮一', '按钮二', '按钮三'] //可以无限个按钮
  ,btn3: function(index, layero){
    //按钮【按钮三】的回调
  }
}, function(index, layero){
  //按钮【按钮一】的回调
}, function(index){
  //按钮【按钮二】的回调
});
(3)layui提示:

信息框:

layer.alert('信息框', {icon:1},function(index){
 //回调事件
  layer.close(index);
}); 

提示框:

layer.msg('提示框', {
  icon: 1,
  time: 1500//1.5秒关闭(如果不配置,默认是3秒)
}, function(){
  //回调事件
});  
7、layui富文本编辑器
  /**
     * 初始化富文本编辑器
     */
    var edit = layedit.build('whisperEditor', {
        uploadImage: {  //图片上传接口
            url: '/admin/Index/uploadImg'
        }
    });
ps:
layedit修改预览图片的style(修改大小):
   打开layedit.js文件,搜索“img{”,然后再后边添加需要的style
image.png
layedit修改表情图片的style:

打开layedit.js文件,搜索“img{”,在后边增加style:""


image.png
layedit修改上传的图片储存时的style(即编辑器里未解析的img标签):

打开layedit.js文件,搜索“src: e.data.src,”,然后再后边添加需要的style


image.png

以上大多是使用时我遇到的一些问题,希望对同样遇到此问题的能有所帮助。

其他:

基于layui的下拉多选框:https://hnzzmsf.github.io/example/example_v4.html

2019/04/14更新:

在上周修改数据的时候,类似这种:


image.png

,在点击编辑的时候,有些行可以正常的使用,有些行会报这个错误,


image.png

Uncaught SyntaxError: Invalid or unexpected token
使用的toolbar入下:


image.png

后来发现reportingConditions这个参数中有空格,而onclick属性中不允许有空格
最终解决:


image.png

在传参数之前先encodeURIComponent(d.reportingConditions)编码,然后使用的时候用decodeURIComponent()解码就行了!

链接:https://wmelon.cn/134.html

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,921评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,635评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,393评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,836评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,833评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,685评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,043评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,694评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,671评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,670评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,779评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,424评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,027评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,984评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,214评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,108评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,517评论 2 343

推荐阅读更多精彩内容