2013-10-26 19 views
0

我正在使用下面的代码来获取datakey值,当行双击,现在我想在这里使用这个key值,我怎么能得到这个值(或)如何将此值传递给服务器端?如何获得datakey值,当行双击radgrid

<telerik:RadScriptBlock ID="RadScriptBlock1" runat="server"> 
    <script type="text/javascript"> 
     function RadGrid1_RowDblClick(sender, args) {      
      var keyValue = dataItem.getDataKeyValue('WageID'); 
      // want to get this keyvalue in server side 
     } 
    </script> 
</telerik:RadScriptBlock> 

<telerik:RadGrid ID="RadGrid1" runat="server" 
    OnNeedDataSource="RadGrid1_NeedDataSource"> 
    <MasterTableView ClientDataKeyNames="ID"> 
    </MasterTableView> 
    <ClientSettings> 
     <ClientEvents OnRowDblClick="RadGrid1_RowDblClick" /> 
    </ClientSettings>     
</telerik:RadGrid> 

回答

0

最后我得到这个问题的答案,以下是答案

<telerik:RadScriptBlock ID="RadScriptBlock1" runat="server"> 
<script type="text/javascript"> 
    function RadGrid1_RowDblClick(sender, args) { 
    //changed code here 
     var grid = $find("<%= RadGrid1.ClientID %>"); 
      var MasterTable = grid.get_masterTableView(); 
      var row = MasterTable.get_dataItems()[eventArgs.get_itemIndexHierarchical()]; 
      var key = MasterTable.getCellByColumnUniqueName(row, "WageID"); // get the value by uniquecolumnname 
      var ID = key.innerHTML;   
      MasterTable.fireCommand("MyClick2",ID);   
    } 
</script> 
</telerik:RadScriptBlock> 

<telerik:RadGrid ID="RadGrid1" runat="server" 
OnNeedDataSource="RadGrid1_NeedDataSource"> 
<MasterTableView ClientDataKeyNames="ID"> 
</MasterTableView> 
<ClientSettings> 
    <ClientEvents OnRowDblClick="RadGrid1_RowDblClick" /> 
</ClientSettings>     
</telerik:RadGrid> 

// itemcommand radgrid控件的事件下,添加以下代码。

if (e.CommandName == "MyClick2") 
    { 
     object obj = e.CommandArgument; 
     string ID = obj.ToString(); 
     //logic to fulfill our requirment. 
    } 
0

您可以用下面的代码获取客户端上的datakeyvalue:

function OnRowDblClick(sender, args) { 

     var key= args.getDataKeyValue("WageID"); 
    document.getElementById('<%= HidenField1.ClientID %>').value = key; 

    } 

通过这些值服务器端的一个建议是,你可以将其分配给hiddenfield并访问服务器端的隐藏字段。