layui的open怎么关闭-LMLPHP

本教程操作环境:windows10系统、layui2.5.6,本文适用于所有品牌的电脑。

推荐:《layui教程

layui-open关闭自身窗口解决方法

layui的open怎么关闭-LMLPHP

1、这里的弹窗弹出来的是一个页面,经过了后台才弹出来的一个页面

1.1、弹窗的实现

1.1.1、 js 部分

     function getArticleById(articleId){
             var index = layer.open({
                    type: 2,
                    title: '修改管理员',
                    area: ['90%', '95%'],
                    shade: 0.8,
                    resize: false,
                    fixed: false,
                    move: false,
                    shadeClose: false,
                    content: '${ctxPath}/article/getArticleById?articleId='+articleId
                });
            }
登录后复制

1.1.2、后台Java部分

 /**
 * 去到修改文章页面
 * */
    @RequestMapping("/getArticleById")
    public String getArticleById(@RequestParam("articleId") Integer articleId,Model model) {
    MrtArticle mrtArticle = mrtArticleService.getArticleById(articleId);
    model.addAttribute("mrtArticle",mrtArticle); 
    return "article/articleUpdate";
    }
登录后复制

到这里也面就弹出来了

1.2、关闭该弹窗,在articleUpdate.jsp的JS部分用以下两行代码它就把自己关闭了

  //当你在iframe页面关闭自身时
var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
parent.layer.close(index); //再执行关闭   
        layer.alert('提交成功', {
                    skin: 'layui-layer-molv' //样式类名  自定义样式
                    ,closeBtn: 1    // 是否显示关闭按钮
                    ,anim: 1 //动画类型
                    ,btn: ['确定'] //按钮
                    ,icon: 6    // icon
                    ,yes:function(){
                   //当你在iframe页面关闭自身时
var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
parent.layer.close(index); //再执行关闭

                    }
              });
登录后复制

layer.close(index) - 关闭特定层

关于它似乎没有太多介绍的必要,唯一让你疑惑的,可能就是这个index了吧。事实上它非常容易得到。

codelayui.code

  1. //当你想关闭当前页的某个层时
  2. var index = layer.open();
  3. var index = layer.alert();
  4. var index = layer.load();
  5. var index = layer.tips();
  6. //正如你看到的,每一种弹层调用方式,都会返回一个index
  7. layer.close(index); //此时你只需要把获得的index,轻轻地赋予layer.close即可
  8. //如果你想关闭最新弹出的层,直接获取layer.index即可
  9. layer.close(layer.index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
  10. //当你在iframe页面关闭自身时
  11. var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
  12. parent.layer.close(index); //再执行关闭

layer.closeAll(type) - 关闭所有层

如果你很懒,你不想去获取index你只想关闭。那么closeAll真的可以帮上你。如果你不指向层类型的话,它会销毁掉当前页所有的layer层。当然,如果你只想关闭某个类型的层,那么你可以

codelayui.code

  1. layer.closeAll(); //疯狂模式,关闭所有层
  2. layer.closeAll('dialog'); //关闭信息框
  3. layer.closeAll('page'); //关闭所有页面层
  4. layer.closeAll('iframe'); //关闭所有的iframe层
  5. layer.closeAll('loading'); //关闭加载层
  6. layer.closeAll('tips'); //关闭所有的tips层

以上就是layui的open怎么关闭的详细内容,更多请关注Work网其它相关文章!

09-06 18:18