0

当我选择我的 asp.net 树视图复选框节点时,它会自动回发,导致网页跳转到页面顶部。如何防止这种情况发生?我遇到了这个,但它在 vb.net 中。Vb.net 等价物。我正在使用 c#。

c# 代码

        void TreeViewAddItems_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
        {
             ........
        }
4

2 回答 2

1

如果您想尝试您提到的帖子中的 VB.net 方法,只需ScriptManager以相同的方式使用:

ScriptManager scriptManager = ScriptManager.GetCurrent(this.Page);
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType, "selectNode", ("var elem = document.getElementById(\'" 
                + (tree.ClientID + "_SelectedNode\');var node = document.getElementById(elem.value);node.scrollIntoView(true);elem.scrollL" +
                "eft=0;")), true);
于 2013-01-13T19:48:04.537 回答
1

这是因为您的代码在服务器上运行,所以当用户单击展开按钮时,它正在发出服务器请求,然后重新呈现页面。页面的重新呈现会导致滚动重置到顶部。我怀疑您是否希望每次用户展开节点时都发出整页请求。您最好使用客户端脚本从服务器请求数据并将其动态放入树中。

于 2013-01-13T19:41:02.953 回答