如何在弹出的页面上作一个关闭按钮

提问 已结
20 556
丘尔
丘尔 2018-9-29
悬赏:20飞吻
版本:layui 2.2 浏览器:


如题,如何在弹出的页面上作一个关闭按钮。
直接调
var index = parent.layer.getFrameIndex(window.name);
parent.layer.close(index);
会触发校验代码的。
回帖
  • SSJQ
    2018-9-29
    @丘尔 用 jquery 或者 js 单独写个关闭按钮的点击事件
    先按我第一条回复那样做,然后
    jquery 代码:
    $.("#close").click(function(){ closeLayer() })
    如果没引用jquery,记得把jquery引进来
    layui.use(['form','jquery'], function() {
    var form = layui.form
    , $ = layui.$
    })
    0 回复
  • 丘尔
    2018-9-29
    直接写 <input type="button" name="close" value="关闭" onclick="window.close();" /> 都无效。
    1 回复
  • 丘尔
    2018-9-29


    请大神帮忙看下, 关闭的 【 lay-submit=""】好像不能去掉,去掉form.on('submit(close)'接收不了?
    1 回复
  • SSJQ
    2018-9-29
    你把关闭按钮里的 lay-submit,lay-filter 去掉,并且加上 type="button" 试试
    0 回复
  • 丘尔
    2018-9-29
    试过,都无效了。我改下方式吧,在layui.open那里加btn[]
    0 回复
  • SSJQ
    2018-9-29
    @丘尔 什么无效,关闭无效还是验证没去掉?
    0 回复
  • 小青年a
    2018-9-29
    //假设这是iframe页
    var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
    parent.layer.close(index); //再执行关闭
    0 回复
  • SSJQ
    2018-9-29
    @丘尔 你不是要关闭弹窗吗?为什么要用window.close();
    0 回复
  • SSJQ
    2018-9-29
    @丘尔 你把你关闭按钮的js代码贴出来看看吧
    0 回复
  • Accce
    2018-9-29
    你试试 parent.layer.closeAll()
    0 回复
  • 丘尔
    2018-9-29

    function closeLayer(){
    var index = parent.layer.getFrameIndex(window.name);
    parent.layer.close(index);
    parent.layui.table.reload('maintable',{
    where: {
    NodeID:NodeID,
    }
    });
    }
    关闭按钮代码是没有问题,关键是会先触发数据校验,有必填项就不给我关闭
    0 回复
  • 小青年a
    2018-9-29
    @丘尔 应该提交的时候才会验证吧,关闭应该不会吧,应该是点击关闭按钮的事件里吧
    0 回复
  • SSJQ
    2018-9-29
    @丘尔 点击事件也贴出来吧,不知道你在哪儿调用的这个函数
    0 回复
  • SSJQ
    2018-9-29
    @丘尔 你这个写法就有问题,关闭按钮走的layui的表单提交事件,所以会触发表单验证
    0 回复
  • 丘尔
    2018-9-29
    好像layui没有看到单独的button事件
    0 回复
  • 丘尔
    2018-9-29
    好的,谢谢
    0 回复
  • SSJQ
    2018-9-29
    @丘尔 好吧,我确定你是新手了,事件主要指的是js的事件,layui给的是layui 封装好的事件,一些基本的事件得自己写,百度看看js和jquery的事件吧[微笑]
    0 回复
  • SSJQ
    2018-9-29
    @丘尔 抱歉之前jquery代码写错了,$后面没 . [生病]

    $("#close").click(function(){ closeLayer() })
    0 回复
  • 丘尔
    2018-9-29
    [泪] [泪] ,我只是想统一代码嘛
    0 回复
  • Rowe青衫
    2018-9-29
    自己写个Button的单击时间就可以了,没必要搞这么多吧;
    0 回复