• easyui tab update bug 完美解决方案 调用当前tab的iframe


    情况介绍 :这个方案解决用easyui 的tab做标签页时, tab 用update 刷新之后tab页不能关闭的问题

    1.判断tab是否存在。
       var currtab = $('#tabs').tabs('getSelected');
    
    2.判断点击的tab是否是当前选中的tab。
      var currtab = $('#tabs').tabs('getSelected');
      var tab = $("#tabs").tabs("getTab", title);
      if (currtab == tab)
       {
         ...
       }
    3.是当前tab时,刷新。
        var url = $(currtab.panel('options').content).attr('src'); 
        refreshTab(tab, url);
    4.不是当前tab时,转换当前选中的tab,在刷新!
         var tab = $("#tabs").tabs("select", title);
         var currtab = $('#tabs').tabs('getSelected');
         var url = $(currtab.panel('options').content).attr('src');
                        refreshTab(tab, url);
     5.更新tab 对应的iframe  公用的方法
         function refreshTab(obj,url)
    {
    var refresh_tab = obj; if (refresh_tab && refresh_tab.find('iframe').length > 0)
    {
    var _refresh_ifram = refresh_tab.find('iframe')[0]; _refresh_ifram.contentWindow.location.href = url; } }

    1.第一种方案 删除tab页 在新增一个tab

     function addTab(title, url) {
         if ($('#tabs').tabs('exists', title)) 
          {
             var currtab = $('#tabs').tabs('getSelected');
             var tab = $("#tabs").tabs("getTab", title);
                 if (currtab == tab)
                  {
                     var url = $(currtab.panel('options').content).attr('src');
                     if (url != undefined && currtab.panel('options').title != 'Home')
                     {
                         var index = $('#tabs').tabs('getTabIndex', tab);
                         $('#tabs').tabs('close', index);
                         $('#tabs').tabs('add',
                            {
                                title: title,
                                content: createFrame(url),
                                closable: true
                           });
                    }
                    else 
                    {
                        var tab = $("#tabs").tabs("select", title);
                    }
                }
                else {
                    var content = createFrame(url);
                    $('#tabs').tabs('add',
                        {
                            title: title,
                            content: content,
                            closable: true
                        });
                     }
           }
    }
    View Code

    2.第二种方案 跳到对应的tab 在刷新

      function addTab(title, url) {
                if ($('#tabs').tabs('exists', title)) {
                    var currtab = $('#tabs').tabs('getSelected');
                    var tab = $("#tabs").tabs("getTab", title);
                    if (currtab == tab) {
                        var url=$(currtab.panel('options').content).attr('src');
    
                        refreshTab(tab, url);
                    }
                    else {
                        var tab = $("#tabs").tabs("select", title);
                        var currtab = $('#tabs').tabs('getSelected');
                        var url = $(currtab.panel('options').content).attr('src');
                        refreshTab(tab, url);
                    }
                }
                else {
                    var content = createFrame(url);
                    $('#tabs').tabs('add',
                        {
                            title: title,
                            content: content,
                            closable: true
                        });
                }
            }
    View Code
     跟新tab 对应的iframe
    function refreshTab(obj,url)
    {
    var refresh_tab = obj; if (refresh_tab && refresh_tab.find('iframe').length > 0)
    {
    var _refresh_ifram = refresh_tab.find('iframe')[0]; _refresh_ifram.contentWindow.location.href = url; } }

      

  • 相关阅读:
    浅谈对java中锁的理解
    Spring 4 支持的 Java 8 特性
    【转】Java线程面试题 Top 50
    JVM知识点总览-中高级Java工程师面试必备
    [LeetCode] 195. Tenth Line 第十行
    [LeetCode] 281. Zigzag Iterator 之字形迭代器
    [LeetCode] 324. Wiggle Sort II 摆动排序 II
    [LeetCode] 280. Wiggle Sort 摆动排序
    [LeetCode] 167. Fraction to Recurring Decimal 分数转循环小数
    [LeetCode] 187. Repeated DNA Sequences 求重复的DNA序列
  • 原文地址:https://www.cnblogs.com/liuyu7177/p/3110886.html
Copyright © 2020-2023  润新知