我正在使用treeview控件。我正在動態構建樹。有時樹變大,下滾動條需要看整棵樹。 用戶可以從樹中選擇一個節點。如果選擇了一個節點,我會從服務器端更改節點的顏色。回發後選擇treeview節點 - asp.net
我的問題是,如果用戶選擇了一個在樹底部的節點(意思是用戶使用下拉滾動條來查看該節點),回發之後顯示樹的頂部,以查看選定的節點用戶需要使用向下滾動條。
我需要在回發後顯示選定的節點。我怎樣才能做到這一點?
我使用C#和asp.net
我正在使用treeview控件。我正在動態構建樹。有時樹變大,下滾動條需要看整棵樹。 用戶可以從樹中選擇一個節點。如果選擇了一個節點,我會從服務器端更改節點的顏色。回發後選擇treeview節點 - asp.net
我的問題是,如果用戶選擇了一個在樹底部的節點(意思是用戶使用下拉滾動條來查看該節點),回發之後顯示樹的頂部,以查看選定的節點用戶需要使用向下滾動條。
我需要在回發後顯示選定的節點。我怎樣才能做到這一點?
我使用C#和asp.net
您可以使用更新面板來解決此問題。
在jquery的幫助下,我們可以將選定的節點ID發送到查詢字符串和document.ready中,我們可以讀回並突出顯示該節點。 對代碼一看:後面的onclick代碼
代碼:
public void TreeView1_OnClick(Object sender, EventArgs e)
{
ScriptManager.RegisterStartupScript(
Page,
Page.GetType(),
"HighlightSelectedNode",
"HighlightSelectedNode();",
true
);
}
和JavaScript:
<script type="text/javascript" language="javascript">
function HighlightSelectedNode() {
var selectedNodeID = $('#<%= TreeView1.ClientID %>_SelectedNode').val();
if (selectedNodeID != "") {
document.location.href = "http://" + window.location.host
+ window.location.pathname
+ "?Node=" + selectedNodeID;
return false;
} else {
// alert("Not found");
}
}
// Highlight active node on pageload.
$(document).ready(function() {
var querystring = location.search.replace('?', '').split('&');
var queryObj = {};
for (var i = 0; i < querystring.length; i++) {
var name = querystring[i].split('=')[0];
var value = querystring[i].split('=')[1];
queryObj[name] = value;
}
var nodeID = queryObj["Node"];
$('#' + nodeID).css({ 'background-color': '#888'});
});
</script>
我試圖更新面板。但那不工作,因爲我想 – 2010-11-12 10:07:34