注册 登录
编程论坛 ASP.NET技术论坛

[求助]怎么实现点击TreeView的节点,但不要刷新页面,而其节点值是更改了的

冰残剑 发布于 2007-06-07 14:22, 4878 次点击

不用AJAX能够实现上面这功能吗,谢谢!!!

12 回复
#2
冰残剑2007-06-07 15:07

那位大侠帮忙一下啊!

#3
川流不息2007-06-07 15:11
告訴我,你要改變的值是從哪裡得到的?是不是從數據庫中重新查到的?
#4
冰残剑2007-06-07 15:26
不用啊,就是树是不用变的。
(我的树是一次性生成的,无限级的)
#5
冰残剑2007-06-07 15:28
我的意思就是想跟下拉列表一样,选中他的值而不刷新
#6
冰残剑2007-06-07 15:41
帮主,出手啊!
#7
川流不息2007-06-07 15:43
當然可以不刷新了。newNode.NavigateUrl = "#"
#8
冰残剑2007-06-07 15:56
这我试过,达不到效果。
这样做读不到被选中节点的值:TreeView1.SelectedNode.Value
#9
川流不息2007-06-07 16:03
你想要不刷新去讀那個值是不可能的,TreeView1.SelectedNode.Value
這個必須要服務器事件才能讀到。
#10
川流不息2007-06-07 16:07

你想去讀取你曾經選取過的這個節點的值是吧?
我曾經做過這種,我給你一段代碼:

newTN = New TreeNode
newTN.Value = dvRow.Item("ID").ToString.Trim
newTN.Text = dvRow.Item("ID").ToString.Trim & "-" & dvRow.Item("SHOWNAME").ToString.Trim
'???唳摨?葉?€?
strID = dvRow.Item("ID").ToString.Trim
strShowName = dvRow.Item("SHOWNAME").ToString.Trim
strName_EN = dvRow.Item("NAME_EN").ToString.Trim
strName_Local = dvRow.Item("NAME_LOCAL").ToString.Trim
'頧祆?????
strID = setJSValue(strID)
strName = strID & "-" & setJSValue(strShowName)
strName_EN = setJSValue(strName_EN)
strName_Local = setJSValue(strName_Local)


newTN.NavigateUrl = "javascript:FunOnTreeNodeClick('" & strID & "','" & strName & "','" & strName_EN & "','" & strName_Local & "')"'在這裡,你將你這個節點的Test或Value傳到JS中,然後,你在JS中將這個值賦給一個隱藏框,你在讀這個節點值的時候,去讀那個隱藏框的值就行了。
TN.ChildNodes.Add(newTN)
Next

#11
冰残剑2007-06-07 16:39
解决了,谢谢啊
川流,你实在是太伟大了,真不亏为一帮之主!!!
#12
川流不息2007-06-07 16:48
不謝。
#13
foshan2007-06-08 08:48

我现在就是用微软的ASP.NET AJAX 1.0 框架,实现两个TreeView和一个Gridview的局部刷新,很简单的。

[此贴子已经被作者于2007-6-8 8:49:19编辑过]

1