FineUI 官方论坛
标题:
如何动态调整ext:Tab控件的iframe的地址,而不改变页面布局?
[打印本页]
作者:
张波
时间:
2012-7-25 15:03
标题:
如何动态调整ext:Tab控件的iframe的地址,而不改变页面布局?
本帖最后由 张波 于 2012-7-25 15:06 编辑
如何不改变页面布局的前提下,而动态调整ext:Tab控件的iframe的地址?
目前我遇到这样一个情况,页面分左右两列:左列为树,右为ext:Tab控件。如下图所示:
[attach]857[/attach]
想实现以下功能:点击左树节点,动态调整右Tab的IframeUrl也显示不同的内容。
但现在如果URL调整,则整个页面被铺满,左侧树控件无法显示,如下图所示:
[attach]858[/attach]
其实功能实现很简单:就是在树控件的点击事件中改变Tab的IFrameUrl :
protected void tree_Main_NodeCheck(object sender, ExtAspNet.TreeCheckEventArgs e)
{
//tab_Home,Tab控件ID
tab_Home.Title = e.Node.Text;
tab_Home.IFrameUrl = e.Node.NavigateUrl;
}
请高手指点迷经!
作者:
张波
时间:
2012-7-26 01:46
求高手啊
作者:
张波
时间:
2012-7-26 13:10
自己找到解决的方法了,现放出来,也算是记录一下,以防忘记。
具体原因及解决方案还是参照了“三石”早期的博客:
http://www.cnblogs.com/sanshi/archive/2009/09/08/1562860.html
其中有提到:
点击按钮在Iframe中打开页面,这是很多人经常遇到的问题
<ext:Button ID="Button1" runat="server" Text="首页" EnablePostBack="false">
</ext:Button>
首先设置EnablePostBack="false"来禁用点击按钮回发的行为,然后注册点击按钮的客户端脚本OnClientClick,通过JavaScript函数window.open来指定在名称为name的IFrame中打开新页面。
而这个IFrame正是regionCenter所定义的(IFrameName="main"),所以点击此按钮新页面会在主内容区域打开。
OK!,这里已经说的很明白了,下面就是参考这个要点实现自己的功能了。
在后台绑定树控件时做出相应的调整:
for (int i = 0; i < nodeTitle.Length; i++)
{
ExtAspNet.TreeNode node = new ExtAspNet.TreeNode();
node.Text = nodeTitle
;
node.IconUrl = nodeIconUrl
;
node.OnClientClick = "window.open('www.baidu.com', 'iframe_Home');";
node.EnablePostBack = false;
tree_Main.Nodes.Add(node);
}
作者:
Eugenelxm
时间:
2012-9-28 08:00
你好 我也遇到你说的这种情况 我按你的方式做了 可是还是不能再制定的iframe中触发 我的iframe是在另外一个region区域中 请问除了你上面说的这些注意点 还有其他要做的吗.
欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/)
Powered by Discuz! X3.4