代码之家  ›  专栏  ›  技术社区  ›  Eric

RadGrid双击

  •  2
  • Eric  · 技术社区  · 14 年前

    我想启动服务器端selectedindexchanged方法的radgrid on doubleclick和not on click。有可能这样做吗???

    <telerik:RadGrid ID="RadGridCashier" runat="server" AllowMultiRowSelection="False" DataSourceID="SqlDataSourceCashier" Skin="WebBlue" AutoGenerateColumns="false" AllowFilteringByColumn="true"
                 AllowPaging="True" AllowSorting="true" GroupingSettings-CaseSensitive="false" OnDataBound="RadGridCashier_DataBound" OnSelectedIndexChanged="RadGridCashier_SelectedIndexChanged" >
                    <MasterTableView DataKeyNames="rouse_location,operator_no"   >
                        <Columns>
                           //columns go here
                        </Columns>                        
                    </MasterTableView>
    
                     <ClientSettings EnableRowHoverStyle="true" EnablePostBackOnRowClick="true">
                        <Selecting AllowRowSelect="True" EnableDragToSelectRows="true" />
                         <ClientEvents OnRowDblClick="RowDblClick" />
                    </ClientSettings>
    
                </telerik:RadGrid>
    
    
            function RowDblClick(sender, eventArgs) {
            Row= eventArgs.get_itemIndexHierarchical();
           // here is where i want to fire off selectedindexchanged somehow.
    
        }
    

    有可能这样做吗?在doubleclick上发回还是有其他选择?

    1 回复  |  直到 14 年前
        1
  •  5
  •   Robot    14 年前

    看起来enablePostBackOnRowClick属性与您的clientEvent冲突。在RowDblClick js函数中,可以通过调用RadAjaxManager并向ajaxRequest()方法包含commandArgument来执行ajax调用,例如:

    $find("<%= RadAjaxManager1.ClientID %>").ajaxRequest("SelectedIndexChanged");
    

    protected void RadAjaxManager1_AjaxRequest(object sender, Telerik.Web.UI.AjaxRequestEventArgs e)
    {
        if (e.Argument == "SelectedIndexChanged")
        {
            //Do Something
        }
    }