zoukankan      html  css  js  c++  java
  • easyUI layout 中使用tabs+iframe解决请求两次方法

    demo中的事例在加载tab页面时是

     1   function createFrame(url) {
     2             var s = '<iframe name="iframepanel" scrolling="no" frameborder="0"  src="' + url + '" style="100%;height:100%;"></iframe>';
     3             return s;
     4         }
     5 var content = createFrame(url);
     6                 $('#tabs').tabs('add', {
     7                     title: title,
     8                     content: content,
     9                     closable: true
    10                 });

    由于学疏才浅,简单的理解为,页面加载时iframe渲染一次,tab加载时又刷新一次页面,导致两次请求

    function _323(_324,pp,_325){
    var _326=$.data(_324,"tabs");
    _325=_325||{};
    pp.panel($.extend({},_325,{border:false,noheader:true,closed:true,doSize:false,iconCls:(_325.icon?_325.icon:undefined),onLoad:function(){
    if(_325.onLoad){
    _325.onLoad.call(this,arguments);
    }
    _326.options.onLoad.call(_324,$(this));
    }}));
    var opts=pp.panel("options");
    var tabs=$(_324).children("div.tabs-header").find("ul.tabs");
    opts.tab=$("<li></li>").appendTo(tabs);
    opts.tab.append("<a href="javascript:void(0)" class="tabs-inner">"+"<span class="tabs-title"></span>"+"<span class="tabs-icon"></span>"+"</a>");
    $(_324).tabs("update", { tab: pp, options: opts });
    };

    而在tabs执行'update'前加上opts.content = "";便解决了两次请求的问题,不知道会不会有什么后患

    后期发现点击树叶节点,界面不在刷新,是因为在执行addTab 这个function时var url = $(currTab.panel('options').content).attr('src');此时得到的url="",所以不能继续向下执行做update方法;我就干脆把它注释掉了,直接用参数里传过来的url参数。开始想用创建好的iframe里的属性src,但是由于要传递参数,iframe创建好后,没有修改src属性,调到的参数值一直是第一次创建的iframe的src属性,所以干脆就注释了,使用了参数的url值,不知还会有什么Bug???

  • 相关阅读:
    二分-hdu-4768-Flyer
    UVa 340 Master-Mind Hints (优化查找&复制数组)
    Android中的多媒体显示之图片缩放
    asp.net总结(一)
    JAVA中JNI的简单使用
    HDFS集群balance(2)-- 架构概览
    [置顶] 我的Android进阶之旅------>介绍一款集录制与剪辑为一体的屏幕GIF 动画制作工具 GifCam
    HDFS集群balance(3)-- 架构细节
    项目总结——深入浅出socket网络编程
    HDFS集群balance(4)-- 测试计划
  • 原文地址:https://www.cnblogs.com/hujiapeng/p/4489348.html
Copyright © 2011-2022 走看看