论坛首页 Web前端技术论坛

下拉树Ext.ux.ComboBoxTree,支持form的提交等

浏览 39116 次
精华帖 (5) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-08-11  
还是我哈。在外面不知道怎么加我直接在那个js里面加的
this.tree.on('beforeload', function(node){
                   this.tree.loader.dataUrl='../'+WebServiceUrl+'?trancode=9003&DID='+node.id;   
            });

怎么报错误啊????你的click事件都可以加上!
报this.tree is not defined

这一行this.tree.loader.dataUrl='../'+WebServiceUrl+'?trancode=9003&DID='+node.id;   
0 请登录后投票
   发表时间:2008-08-11  
xiaops2005 写道
这个组件好像有BUG啊,我第一次不可以把树加载上来,第二次以后就可以了.

不知你的代码是怎样写的呢,本人凑合用着没发现什么问题。
会不会是你的树根结点不显示,第一次时到后台加载结点了,页面什么都没有,第二次再打开时,结点加载好的,页面就有了
0 请登录后投票
   发表时间:2008-08-11  
379548695 写道
还是我哈。在外面不知道怎么加我直接在那个js里面加的
this.tree.on('beforeload', function(node){
                   this.tree.loader.dataUrl='../'+WebServiceUrl+'?trancode=9003&DID='+node.id;   
            });

怎么报错误啊????你的click事件都可以加上!
报this.tree is not defined

这一行this.tree.loader.dataUrl='../'+WebServiceUrl+'?trancode=9003&DID='+node.id;   


我看了下你的代码,其实你不用将DID显示写到URL后面,EXT会自动添加的,只是名称不叫DID,叫node
所以不用注册事件

comboBoxTree = new Ext.ux.ComboBoxTree({
renderTo : 'comboBoxTree',
width : 250,
tree : {
xtype:'treepanel',
bbar: ['名称:',{xtype:'trigger',id: 'searchName',width:200,triggerClass:'x-form-search-trigger',onTriggerClick:search}],
loader: new Ext.tree.TreeLoader({dataUrl:'../'+WebServiceUrl+'?trancode=9003'}),
root : new Ext.tree.AsyncTreeNode({id:'0',text:'根结点'})
},
//all:所有结点都可选中
//exceptRoot:除根结点,其它结点都可选(默认)
//folder:只有目录(非叶子和非根结点)可选
//leaf:只有叶子结点可选
selectNodeModel:'leaf'
});
后台可取到trancode和node(展开结点的ID)的值
0 请登录后投票
   发表时间:2008-08-11  
xiexueze 写道
379548695 写道
还是我哈。在外面不知道怎么加我直接在那个js里面加的
this.tree.on('beforeload', function(node){
                   this.tree.loader.dataUrl='../'+WebServiceUrl+'?trancode=9003&DID='+node.id;   
            });

怎么报错误啊????你的click事件都可以加上!
报this.tree is not defined

这一行this.tree.loader.dataUrl='../'+WebServiceUrl+'?trancode=9003&DID='+node.id;   


我看了下你的代码,其实你不用将DID显示写到URL后面,EXT会自动添加的,只是名称不叫DID,叫node
所以不用注册事件

comboBoxTree = new Ext.ux.ComboBoxTree({
renderTo : 'comboBoxTree',
width : 250,
tree : {
xtype:'treepanel',
bbar: ['名称:',{xtype:'trigger',id: 'searchName',width:200,triggerClass:'x-form-search-trigger',onTriggerClick:search}],
loader: new Ext.tree.TreeLoader({dataUrl:'../'+WebServiceUrl+'?trancode=9003'}),
root : new Ext.tree.AsyncTreeNode({id:'0',text:'根结点'})
},
//all:所有结点都可选中
//exceptRoot:除根结点,其它结点都可选(默认)
//folder:只有目录(非叶子和非根结点)可选
//leaf:只有叶子结点可选
selectNodeModel:'leaf'
});
后台可取到trancode和node(展开结点的ID)的值


那后台取到的node不就是一个对象啦????????????
难道这样?
String PID = (String) request.getParameter("DID");改为:String PID = (String) request.getParameter("node");
那我要怎么得到id????????????
0 请登录后投票
   发表时间:2008-08-11  
试啦试真的可以啦。呵呵。不晓得你在那里看到的。自动添加的有node!谢谢啦。我还要加油啊。。。
0 请登录后投票
   发表时间:2008-09-23  
xiexueze 写道
goodboy 写道
form表单回填数据时应该如何设置?

form表单回填数据应该是调用了表单里所有控件的setValue方法
按这样看,只需要在声明comboBoxTree时,加上属性value如下:
value:某个树的结点node,
或者
value:{id:xx,text:xxx}
即可
又或直接调用comboBoxTree.setValue(node)或comboBoxTree.setValue({id:xx,text:xxx})


如何让comboboxTree中id为xx相应的node被选中?
0 请登录后投票
   发表时间:2008-09-25  
liuxuewei 写道
xiexueze 写道
goodboy 写道
form表单回填数据时应该如何设置?

form表单回填数据应该是调用了表单里所有控件的setValue方法
按这样看,只需要在声明comboBoxTree时,加上属性value如下:
value:某个树的结点node,
或者
value:{id:xx,text:xxx}
即可
又或直接调用comboBoxTree.setValue(node)或comboBoxTree.setValue({id:xx,text:xxx})




我的该打勾的都打上了,可是文本框里不能显示出来,例如下图:
  • 大小: 3.5 KB
0 请登录后投票
   发表时间:2008-09-25  
勾 已经打上了
  • 大小: 4.3 KB
0 请登录后投票
   发表时间:2008-09-27  
第一加载出错了,第二次以后就可以,不知道为什么
0 请登录后投票
   发表时间:2008-11-15  
liuxuewei 写道
xiexueze 写道
goodboy 写道
form表单回填数据时应该如何设置?

form表单回填数据应该是调用了表单里所有控件的setValue方法
按这样看,只需要在声明comboBoxTree时,加上属性value如下:
value:某个树的结点node,
或者
value:{id:xx,text:xxx}
即可
又或直接调用comboBoxTree.setValue(node)或comboBoxTree.setValue({id:xx,text:xxx})


如何让comboboxTree中id为xx相应的node被选中?

我也是碰到这个问题啊
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics