easyui內嵌iframe問題解決


項目中使用easyui的tab頁,每個tab頁均內嵌iframe,現在要在tab頁中控制新增一個同級別的tab頁,記錄如下:

首先是main.html主頁面:

<div class="easyui-tabs" fit="true" id="tabs">
    <div title="首頁" data-options="iconCls:'icon-home'" id="main"></div>
</div>

現在要在‘首頁’這個tab頁中控制新增一個同級別的tab頁,可使用如下:

var jq = top.jQuery;
if (jq("#tabs").tabs('exists', "新增的tab頁")){
      jq("#tabs").tabs('select', "新增的tab頁");
} else {
      var content = '<iframe scrolling="auto" frameborder="0"  src="/href/list" style="width:100%;height:100%;"></iframe>';
             jq("#tabs").tabs('add',{
                  title:"新增的tab頁",
                  content:content,
                  closable:true,
                  iconCls: "icon-building_edit"
       });
}

 刷新'首頁'這個tab頁:

var jq = top.jQuery;
jq("#tabs").tabs('close', "新增的tab頁");
var tab = jq('#tabs').tabs("getSelected");  // get selected panel
jq('#tabs').tabs('update', {
       tab: tab,
       options: {
            content:'<iframe scrolling="auto" frameborder="0" src="/market" style="width:100%;height:100%;"></iframe>'
       }
});
jq.messager.show({title:"提示",content:"更新成功"});

這樣的話,一個tab頁關閉之后,就可以實現刷新之前跳轉過來的tab頁。

然后是在iframe子頁面中調用父頁面的js方法:

function openCustomerLinkMan(){
     var selectedRows=$("#dg").datagrid("getSelections");
     if(selectedRows.length!=1){
         $.messager.alert("系統提示","請選擇一條要管理的數據!");
         return;
     }
     window.parent.openTab('客戶聯系人管理','linkManManage.jsp?cusId='+selectedRows[0].id,'icon-lxr');    //直接新增一個tab頁
 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM