2012-06-29 34 views
0

如何在不使用OnRowSelected事件的情況下在客戶端檢索Telerik RadGrid的SelectedID?
所以讓我們看看我的scenarion:
我網格屬性是這樣的:如何在客戶端檢索Telerik RadGrid的SelectedID

<telerik:RadGrid ID="RadGrid1" runat="server" GridLines="None" DataSourceID="SqlDataSource1" AllowPaging="True" AutoGenerateColumns="False" CellSpacing="0" 
     Width="660px" onitemdatabound="RadGrid1_ItemDataBound"> 
        <ClientSettings Selecting-AllowRowSelect="true"> 
         <Selecting AllowRowSelect="True"></Selecting> 
         <ClientEvents OnRowSelected="OnRowSelected" /> 
        </ClientSettings> 
... 

和球門立柱:

<telerik:GridTemplateColumn FilterControlAltText="Filter TemplateColumn_Q column" 
     HeaderText="Q" UniqueName="TemplateColumn_Q"> 
      <ItemTemplate> 
        <asp:Label ID="lblQInsideGrd" runat="server" Font-Size="11px" Text='<%# GetQ(Eval("Q")) %>'></asp:Label> 
      </ItemTemplate> 
    </telerik:GridTemplateColumn> 

我在代碼填寫此欄的背後是這樣的:

protected string GetQ(object Q) 
{ 
    if (Q.ToString().Length < 10) 
    { 
     return Q.ToString(); 
    } 
    else 
    { 
     string Q_str = Q.ToString(); 
     Q_str = Q_str.Substring(0, 10) + "<span style='font-size:9px;color:red;'><a href='#' class='QClick'> (Full View...)</a></span>"; 
     return Q_str; 
    } 

正如您所看到的那樣,我想在每列中找到相關的錨點在客戶端提交該錨點並在alert中顯示該id。
對於服務器端,我們可以使用該錨點的CommandName屬性。
也爲客戶端,當我們點擊每一行時,我們可以使用OnRowSelected事件來檢索該ID。
但在我的情況下,單擊這些錨將不會選擇整個行來觸發OnRowSelected。
那麼我該怎麼做呢?

在此先感謝

回答

3
var radGrid = $find('<%= RadGrid1.ClientID %>'); 
var selectedItems = radGrid.get_masterTableView().get_selectedItems() 
... 

給你:)