FineUI 官方论坛
标题:
【已解决】升级专业版后,添加或删除页面标签页出现问题
[打印本页]
作者:
edgechester
时间:
2017-3-10 09:26
标题:
【已解决】升级专业版后,添加或删除页面标签页出现问题
1.之前用开源版,能够实现在子页面关闭指定的母页面标签(根据标签页ID)。
在母页面前端添加脚本:
window.removeTab = function (TabID) {
mainTabStrip.removeTab(TabID);
};
在公共类中设置关闭标签页命令:
public string CloseTab(string tabID)
{
return String.Format("parent.removeTab.apply(null,['{0}']);", tabID);
}
在子页面实例化后能够实现关闭指定标签。但升级到专业版后,关闭标签页的方法全部失效。
PS:标签页的ID是根据母页面树节点得到的,每个节点有个NodeID。
2.母页面初始化后会打开一个固定的标签页,相当于Fineui在线实例中的首页标签。树节点中有个节点ID与这首页标签一致,点击后跳转到首页,在开源版能够实现,但升级到专业版后失效,点击树节点会打开一个新的标签页。
请问这是什么原因?怎么解决?
作者:
edgechester
时间:
2017-3-22 13:40
作者:
sanshi
时间:
2017-3-22 14:19
这个问题我在QQ上给你回了, removeTab 这个JS函数在专业版中也有,可以查阅JSAPI文档:
[attach]9952[/attach]
添加选项卡和移除选项卡的示例也有:
http://fineui.com/demo_pro/#/demo_pro/other/addtab.aspx
关联框架左侧树控件和选项卡控件需要JS代码:
[attach]9953[/attach]
升级一定要仔细阅读升级指南,并严格按照这里的步骤进行:
http://fineui.com/pro/upgrade.html
如果还有问题,请基于空项目重现问题,发给专业版客服QQ
作者:
edgechester
时间:
2017-3-23 10:58
问题解决反馈
经过技术支持帮助,问题已经解决。是因为生成tab节点的id规则有了变化。需要在Id前加上TabStrip的clientID,比如给按钮添加关闭指定标签事件:
protected void btnCloseHello_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(CloseTab("TabId"));
}
要改为
PageContext.RegisterStartupScript(CloseTab("Panel1_mainPanel_mainTabStrip_TabId"));
感谢FineUI团队耐心解答!
作者:
sanshi
时间:
2017-3-23 11:11
专业版中生成tab节点的id规则可能有变化,其实可以通过浏览器的调试工具F12看到的:
[attach]9955[/attach]
所以把原来的代码:
public string CloseTab(string tabID)
{
return String.Format("parent.removeTab.apply(null,['{0}']);", tabID);
}
protected void btnCloseHello_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(CloseTab("Node_hello"));
}
protected void btnCloseLogin_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(CloseTab("Node_login"));
}
复制代码
改为:
public string CloseTab(string tabID)
{
return String.Format("parent.removeTab.apply(null,['{0}']);", tabID);
}
protected void btnCloseHello_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(CloseTab("Panel1_mainPanel_mainTabStrip_Node_hello"));
}
protected void btnCloseLogin_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(CloseTab("Panel1_mainPanel_mainTabStrip_Node_login"));
}
复制代码
就可以了。
欢迎光临 FineUI 官方论坛 (https://fineui.com/BBS/)
Powered by Discuz! X3.4