请看下面的代码,此功能怎么实现?

班门弄斧 2011-04-26 08:32:21
//定义一个树
  var root=new Ext.tree.AsyncTreeNode({
id:"-1",
loader:new Ext.tree.TreeLoader({
url:"GetData.aspx?temp="+temp, //此处temp的值想通过下面FormPanel的选择框传递过来 listeners:{
"beforeload":function(treeloader,node)
{
treeloader.baseParams={
id:node.id,
method:'POST'
};
}
}
})
});



//定义一个FormPanel
  var AddInfofp = new Ext.FormPanel(
{
region:'center',
resizable:false,
labelWidth:90,
collapsible:true,
closeAction:'hide',
closable:true,
plain : true,
frame:true,
border:false,
layout: 'form',
bodyStyle:"padding:5px 5px 5px 5px",
items:[{
name:"dp_id",
xtype:"combo",
store:DataPrivstore,
mode:"remote",
displayField:"dp_name",
valueField:"dp_id",
forceSelection:true,
fieldLabel:"数据权限级",
editable:false,
typeAhead:true,
selectOnFocus:false,
triggerAction:"all",
allowBlank:false,
anchor:"90%",
listeners:{scope:this,
render : function(combo) {combo.setValue("门店");},
select:function()
{
field=AddInfofp.form.findField("dp_id");
if(field.isValid())
{
var valued=field.getValue();
此处想根据COMBO下拉选择值来传递给上面的树,使树的数据重新加载 }
}
}
}]
});

//后台GetData.aspx.cs
string temp = Request.Form["temp"];
此处获取前台temp值
...全文
169 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
toury 2011-04-26
  • 打赏
  • 举报
回复
兄弟别客气,能帮上点忙我也高兴,呵呵。
treegrid我也不熟,但我觉得这些东东都有相通的地方,无非就是可视化的交互界面RENDER和非可视化的数据源处理。无论怎么变也离不开这个宗旨。只要对JS、对DOM操作比较熟,就可以应付去发现、解决问题,呵呵
班门弄斧 2011-04-26
  • 打赏
  • 举报
回复
谢谢你的积极回复,准备结贴,方法应该是掌握了,自己研究一下。另外我之前有几个帖子是关于treegrid的,论坛里一直都没有人回复,那个问题我也一直搁浅。有机会我再向你请教。
toury 2011-04-26
  • 打赏
  • 举报
回复
你查查它的reload()函数定义:
alert(righttree.root.reload;)
看看它什么机制。如果就是和网页reload()一样,那就要改代码
班门弄斧 2011-04-26
  • 打赏
  • 举报
回复
照此看,即使重设root.url,虽然赋值成功,但是reload()的时候还是获取的原先的url
班门弄斧 2011-04-26
  • 打赏
  • 举报
回复
alert路径没有问题,关键是string temp = Request.QueryString["temp"];temp还是NULL
toury 2011-04-26
  • 打赏
  • 举报
回复
var value=field.getValue();

root.url='GetData.aspx?temp='+value+"&t="+new Date.getTime();
alert(root.url);//看看这里是否正确?
righttree.root.reload();
谁是白骨精 2011-04-26
  • 打赏
  • 举报
回复
学习阶段
班门弄斧 2011-04-26
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 toury 的回复:]
【代码编译通过,没有问题,但关键是我后台GetData.aspx.cs里面获取不到temp的值】
string temp = Request.Form["temp"];???????????
你这个是GET过去的,怎么用Request.Form??
[/Quote]
改成string temp = Request.QueryString["temp"];也还是获取不到,temp一直为null
toury 2011-04-26
  • 打赏
  • 举报
回复
【代码编译通过,没有问题,但关键是我后台GetData.aspx.cs里面获取不到temp的值】
string temp = Request.Form["temp"];???????????
你这个是GET过去的,怎么用Request.Form??
班门弄斧 2011-04-26
  • 打赏
  • 举报
回复
listeners:{scope:this,
select:function()
{
field=AddDPGInfofp.form.findField("dp_id");
if(field.isValid())
{
var value=field.getValue();
alert(value);
root.url='GetData.aspx?temp='+value;
righttree.root.reload();
}
}
}
代码编译通过,没有问题,但关键是我后台GetData.aspx.cs里面获取不到temp的值
toury 2011-04-26
  • 打赏
  • 举报
回复
COMBO:
onchange="root.url=\"GetData.aspx?temp=\"+valued"

52,797

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧