需要使用__doPostBack调用服务器端事件

Man*_*aha 5 javascript asp.net rad-controls

我有像这样的服务器端事件.

protected void RadTreeView1_ContextMenuItemClick(object sender, RadTreeViewContextMenuEventArgs e)
    {
         // implementation here.
    }
Run Code Online (Sandbox Code Playgroud)

我试图从客户端javascript调用它.我试过__doPostBack("contextMenuItemID","some string")

它将页面发回服务器,但这不会调用原始的ContextMenuItemClick事件.如何使用正确的事件Args调用原始的contextMenuItemClick事件?

CAb*_*ott 7

您将需要查看使用ClientScriptManager.GetPostBackEventReference方法.这将使用ClientScriptManager(未经测试的示例)为控件/操作创建正确的javascript调用("__doPostBack" ):

<script type="text/javascript">
    function callPostBack() {
        <%= Page.ClientScript.GetPostBackEventReference(RadTreeView1, String.Empty) %>;
    }
</script>
Run Code Online (Sandbox Code Playgroud)