在c#中调用SelectedNodeChanged事件处理程序

本文关键字:事件处理 程序 SelectedNodeChanged 调用 | 更新日期: 2023-09-27 18:10:49

我用数据库中的数据填充了我的树节点。树视图代码如下:

<asp:TreeView ID="mytv" runat="server" ImageSet="Arrows" 
        ondatabinding="Page_Load" onselectednodechanged="mytv_SelectedNodeChanged">

,后面的代码如下:

protected void mytv_SelectedNodeChanged(object sender, EventArgs e)
{
  // how to call java-script function from here.
}

我想要实现的是按照使用JavaScript单击的树节点显示div的内容。

或者在单击treeview节点时是否有其他方法显示来自数据库或div的内容

在c#中调用SelectedNodeChanged事件处理程序

在方法中使用:

ScriptManager.RegisterStartupScript(this, this.GetType(), 
                                    "anyName", "alert('test');", true);

我刚刚重读了你的帖子,如果你只是想从treeview中获得选定的值,你可以在JS中使用更像这样的东西

function CheckTreeValue()
{
    var treeView = document.getElementById('treeviewID');
    if(treeView.selectedNodeID.value != null)
    {
        var selectedNode = document.getElementById(treeView.selectedNodeID.value);
        //Get Whatever you need from the node
        var text = selectedNode.text;
        WebService.PullValue(text, callback);
    } 
    else // No Node Selected
        return;
}

您可以通过滥用

手动创建脚本。
<asp:Literal>

但是最好使用ScriptManager

ScriptManager.RegisterStartupScript(
    this,
    this.GetType(), 
    "UniqueScriptKey", 
    "FunctionYouWantToCall();
     alert(document.getElementById('OrAnyJavascript').innerHTML);", 
    true);