FineUI 官方论坛

标题: Tree与TabStrip控件联动经验分享。 [打印本页]

作者: Primates    时间: 2013-10-26 02:10
标题: Tree与TabStrip控件联动经验分享。
本帖最后由 Primates 于 2013-10-26 02:17 编辑

[attach]3420[/attach]

假设web_online.aspx中有一个Tree和TabStrip控件需要联动,各自的ID分别是 Tree1TabStrip1
web_online.cs文件代码(只贴相关必要的代码)
-------------------
  1.         #region 初始化树型菜单
  2.         protected void Page_Init(object sender, EventArgs e)
  3.         {
  4. // 注册客户端脚本,服务器端控件ID和客户端ID的映射关系</span>
  5.             JObject ids = GetClientIDS(Tree1, TabStrip1);                //这里是服务器端控件ID。
  6.             // 只在页面第一次加载时注册客户端用到的脚本
  7.             if (!Page.IsPostBack)
  8.             {
  9.                 string idsScriptStr = String.Format("window.DATA={0};", ids.ToString(Newtonsoft.Json.Formatting.None));
  10.                 PageContext.RegisterStartupScript(idsScriptStr);
  11.             }
  12.         }
  13. private JObject GetClientIDS(params ControlBase[] ctrls)
  14.         {
  15.             JObject jo = new JObject();
  16.             foreach (ControlBase ctrl in ctrls)
  17.             {
  18.                 jo.Add(ctrl.ID, ctrl.ClientID);
  19.             }
  20.             return jo;
  21.         }
  22.         #endregion
复制代码
在对应的default.js代码中写入一下代码:
  1. function onReady() {
  2.     var  treeMenu = Ext.getCmp(DATA.Tree1),
  3.            mainTabStrip = Ext.getCmp(DATA.TabStrip1);

  4. X.util.initTreeTabStrip(treeMenu, mainTabStrip, null, true, false, false);
复制代码
OK,完工。试着看看你的效果(需要刷新,同时别忘了 default.js 的路径)。



作者: Primates    时间: 2013-10-26 02:12
提示:本想在代码中标注颜色,没成想第一次使用此论坛功能,颜色 最终成了 html 标签色值。请各位自行清理。
作者: Primates    时间: 2013-10-26 02:18
Primates 发表于 2013-10-26 02:12
提示:本想在代码中标注颜色,没成想第一次使用此论坛功能,颜色 最终成了 html 标签色值。请各位自行清理 ...

刚发现可以编辑自己的帖子,我自己清理了。
作者: bluer    时间: 2013-10-26 09:14
好人,真好人。。。,支持,一大早。。
作者: erp8@live.cn    时间: 2013-10-26 15:00
感谢无私奉献。。。支持,.....
作者: winzzb    时间: 2013-10-29 11:07
楼主,我照做了js不触发呀
作者: Primates    时间: 2013-10-29 14:41
winzzb 发表于 2013-10-29 11:07
楼主,我照做了js不触发呀

除字母大小写外,还有js的路径一定要对。我目前已经做了n(n>10)次了,均成功。
作者: erp8@live.cn    时间: 2013-11-12 22:16
{:soso_e179:}
作者: 游泳的鱼    时间: 2013-11-15 15:47
根据示例,增加一个txtUser,但是在js中使用txtUser.setText('');方法无效,在js中能获取到txtUser的id值。
作者: 黑冰.cn    时间: 2013-11-15 22:18
游泳的鱼 发表于 2013-11-15 15:47
根据示例,增加一个txtUser,但是在js中使用txtUser.setText('');方法无效,在js中能获取到txtUser的id值。 ...

要先获取ext对象
var txtUser = Ext.getCmp('<%=txtUser.ClientID%>');
txtUser.setValue('');




欢迎光临 FineUI 官方论坛 (https://fineui.com/bbs/) Powered by Discuz! X3.4