关于layer.open() 弹框的使用


在用 layer.open() 追加渲染HTML的时候,完全看不到效果,皆因layui框架需要在最后用 form.render() 方法来渲染表单才可以看到效果,写法如下:

<script> layui.use(['form','layer'],function(){ var form = layui.form; var layer = layui.layer; str = '<div class="layui-form layui-form-pane">'; str += "<label for='name' class='layui-form-label'>分类名称:</label><input maxlength=5 id='category_name' type='text' style='width:55%;height:36px;' value='"+ category_name +"'>"; str += '</div>'; var index = layer.open({ title:"编辑分类", area:['325px'], content:str, btn:['确定','取消'], yes:function(){ var name = $.trim($('#category_name').val());
 $.post( '/shopmenu/category_list', { name:name, cid:cid, type:3, is_must:must2 }, function(data){ // console.log(data);return;
                                var data = $.parseJSON(data); if(data.result){ layer.msg("更改成功", {icon: 6, time:3000}); location.href = "javascript:location.replace(location.href)"; }else{ layer.msg(data.msg, {icon: 7, time:3000});return; } } ); }, btn2:function(){ layer.closeAll(index); //关闭当前窗口
 } }); // 渲染表单
 form.render(); }); </script>

 

另外, layui框架弹窗的关闭方法走一波,,

关闭当前layer.open()打开的弹窗: var index = layer.open({});//先赋值这个弹窗 layer.closeAll(index);

//关闭除父级外的子页面
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);//关闭当前页
parent.location.reload();//刷新父级页面
//window.parent.location.replace(location.href)//刷新父级页面
 其他的, layer.closeAll(); //疯狂模式,关闭所有层
layer.closeAll('dialog'); //关闭信息框
layer.closeAll('page'); //关闭所有页面层
layer.closeAll('iframe'); //关闭所有的iframe层
layer.closeAll('loading'); //关闭加载层
layer.closeAll('tips'); //关闭所有的tips层 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM