layer弹出通过后台controller返回的视图(如jsp),并且调用视图上的方法

一  

//修改单位--弹框
        $('#orgEdit').on('click',function(){
            var job_id=$("#jobId").val();
                 layer.open({
                   id: 'orgEdit-jsp',//这个是这个layer弹出层的id,用来在调用弹出的那个jsp(子页面)的方法时使用
                     type: 2,//如果设置为1,则弹出的jsp页面内容无法正常显示
                     title: '发布单位配置',
                     scrollbar: false,
                     zIndex: 1050,
                     btnAlign: 'c',
                     area: ['60%','100%'],
                     content: "${ctx}/jobs/orgEdit.action?job_id="+job_id+"&callBack=${callBack}",//url地址
                     btn: ['确定','取消'],
                     yes: function (index, layero) {
                           if(orgEdit_Save()){
                               layer.msg('保存成功', {
                                    icon: 1
                               });
                               queryDetailJob(job_id);//刷新此job信息
                               layer.close(index);
                        }else{
                            layer.msg('保存失败', {
                                    icon: 1
                               });
                        }
                       
                     },
                     btn2: function(index){ 
                     //关闭按钮
                       layer.close(index);
                   },
                   cancel:function(index, layero){
                       layer.close(index);
                     }
                   });
        })    
    });
    
    //调用弹出层页面保存方法
    function orgEdit_Save(){
        var resultFlag;
        var frameId=document.getElementById('orgEdit-jsp').getElementsByTagName("iframe")[0].id;//照抄即可,orgEdit-jsp需要和前边的layer弹出层id对应
        resultFlag = $('#'+frameId)[0].contentWindow.save();
        return resultFlag;
      }

//如果想要控制弹框的大小,是 area: ['60%','100%'],如果还要控制area中的jsp的大小,可以把弹出的那个jsp页面宽高值写死

 

 

父页面

 function add(url,title){
        layer.open({
              type: 2,
              title: title,
              scrollbar: false,
              zIndex: 1050,
              btnAlign: 'c',
              area: ['720px','402px'],
              content: url,
              btn: ['确定','取消'],
              yes: function (index, layero) {
                    var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe页的窗口对象,执行iframe页的方法:
                    iframeWin.save();//执行子页面save方法
              },
              btn2: function(index){ 
                 //关闭按钮
                layer.close(index);
              },
              cancel:function(index, layero){
                layer.close(index);
              }
         });
        
    }

子页面

function save(){
    $("#kw_params_str1").val($("#assetname").val());//用于资产列表模糊查询
    $('#opUserForm').submit();
}

function saveForm(){
    var options = {
        url: '${ctx}/plat/form/porters/ajaxSaveMultiViewData.action',
        type : 'post',
        dataType : 'json',    
        success:    function(result) {
             if(result.status == '1'){
                 layer.msg('数据已经保存完成...', {icon: 1})
                 setTimeout(function(){
                    parent.opreate('','query');//调用父页面方法
                    }, 500 );
                }else{
                     layer.msg(result.msg, {icon: 2})
                     setTimeout(function(){
                        
                        }, 3000 );
                }
        }
    };
    $('#opUserForm').ajaxSubmit(options);
}

$(function(){
    $("#opUserForm").Validform({
        tiptype:function(msg,o){
            if(o.type == 3){
                layer.tips(msg, $(o.obj),{
                    tips:1,
                    skin: '#e68136'
                });
            }
        },tipSweep:true,
        callback:function(form){
            saveForm();
            return false;
        }
    });
})

layer.open({
                type: 2,
                title: '高级配置',
                //scrollbar: false,
                zIndex: 1050,
                btnAlign: 'c',
                area: ['44%','80%'],
                content: "${ctx}/analysis/report/toHightConf.action? 

                chartbean.itemid="+itemid+"&chartbean.templateid="+

                templateid+"&dtype="+type+"&chartbean.chartid="+chartid,
                btn: ['确定','取消'],
                 yes: function (index, layero) {
                           var body = layer.getChildFrame('body', index);//获取子页面内容
                           body.find("#datatype_conf").val($("#selectDatatype").val());
                           body.find("#countcom_conf").val($("#countcom_save").val());
                           var iframeWin = window[layero.find('iframe')[0]['name']]; //得到iframe页的窗口对象,执行iframe页的方法:
                           iframeWin.saveCtypeAndCcount();//执行子页面save方法
                           layer.close(index);
                   
                 },
                btn2: function(index){ 
                //关闭按钮
                  layer.close(index);
              },
                   cancel:function(index, layero){
                  layer.close(index);
              }
         });   

 

子页面

          parent.initNode(treeNode);//执行父页面方法
              //关闭自身 
             
             var index = parent.layer.getFrameIndex(window.name); //先得到当前iframe层的索引
             parent.layer.close(index); //再执行关闭   

 

 

$.dialog({
                        id : 'depart',
                        lock : true,
                        max : false,
                        min : false,
                        title : '单位排序调整',
                        width : '360px',
                        height : '460px',
                        content : 'url:' + '${ctx}/plat/auth/deptSortList.action',
                        ok:function(){
                            this.content.submitSort();//调用弹出页面的函数提交
                            return false;//阻止窗口关闭
                        },
                        okVal:"确定",
                        cancel:function(){
                            
                        },
                        cancelVal:"取消"
                    }); */

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值