渐渐模糊了约定 2024-01-25 15:08 采纳率: 17.4%
浏览 3

layui无法触发弹出层方法

今天看了 layui 的关闭弹出层的方法:

layer.open({
        type: 2,
        area: ['680px', '520px'],
        content: '/layer/test/iframe.html',
        fixed: false, // 不固定
        maxmin: true,
        shadeClose: true,
        btn: ['获取表单值', '取消'],
        btnAlign: 'c',
        yes: function(index, layero){
          // 获取 iframe 的窗口对象
          var iframeWin =  window[layero.find('iframe')[0]['name']];
          var elemMark = iframeWin.$('#mark'); // 获得 iframe 中某个输入框元素
          var value = elemMark.val();
          if($.trim(value) === '') return elemMark.focus();
          // 显示获得的值
          layer.msg('获得 iframe 中的输入框标记值:'+ value);
        }
      });

这是我的:

layer.open({
            type: 1,
            title:"墓主信息修改",
            content: '<iframe style="width: 1316px;height: 571px;" src="../custom/register.jsp?json='+data.FCusID+'" frameborder="0" class="layadmin-iframe"></iframe>',
            // area: ['320px', '195px'], // 初始宽高
            maxmin: true,
            yes: function(layero, index){
             // 最大化
             console.log("ssssssssssssssssssssssssssssssss")
            var iframeWin =  window[layero.find('iframe')[0]['name']];
            console.log(iframeWin)      
            }

yes 这个function根本进不来

  • 写回答

2条回答 默认 最新

  • 专家-郭老师 Java领域新星创作者 2024-01-25 15:17
    关注

    在layui的layer.open()方法中,yes这个参数的作用是定义第一个按钮(也就是确定按钮)的点击事件。然而在你的配置中,并没有定义按钮(btn 属性)。当你没有定义按钮时,yes函数是不会被触发的。你需要添加btn参数,并至少定义一个按钮。
    以下是一个例子:

    layer.open({
        type: 1,
        title: "墓主信息修改",
        content: '<iframe style="width: 1316px;height: 571px;" src="../custom/register.jsp?json=' + data.FCusID + '" frameborder="0" class="layadmin-iframe"></iframe>',
        maxmin: true,
        btn: ['确定', '取消'], //定义两个按钮,第一个按钮的点击事件是yes函数,第二个按钮的点击事件是cancel函数
        yes: function (index, layero) {
            // 最大化
            console.log("ssssssssssssssssssssssssssssssss")
            var iframeWin = window[layero.find('iframe')[0]['name']];
            console.log(iframeWin)
        }
    });
    
    

    这样代码中的yes函数就会在点击"确定"按钮时被触发。
    希望这个答案能够帮到你,如果你还有其他问题,欢迎随时提问。

    评论

报告相同问题?

问题事件

  • 创建了问题 1月25日

悬赏问题

  • ¥15 剑网三内存脚本有没有作者可以做
  • ¥15 c#转安卓 java html
  • ¥15 os.listdir文件路径找不到
  • ¥15 使用gojs3.0,如何在nodeDataArray设置好text的位置,再go.TextBlock alignment中进行相应的改变
  • ¥15 psfusion图像融合指标很低
  • ¥15 银河麒麟linux系统如何修改/etc/hosts权限为777
  • ¥50 医院HIS系统代码、逻辑学习
  • ¥30 docker离线安装mysql报错,如何解决?
  • ¥15 构建工单的总账影响在哪里查询或修改
  • ¥15 三个简单项目写完之后有重赏之后联系我