如何在不使用OnRowSelected事件的情况下在客户端检索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;
}
如您所见,我希望在每个列中都有一个锚点,我想在客户端检索该锚点的相关 ID ,并在警报中显示该ID。
对于服务器端,我们可以对该锚使用CommandName属性
对于客户端,当我们点击每一行时,我们可以使用OnRowSelected事件来检索该ID
但在我的情况下,单击这些锚点将无法选择整个行来触发OnRowSelected
那我该怎么办呢?
提前致谢
答案 0 :(得分:3)
var radGrid = $find('<%= RadGrid1.ClientID %>');
var selectedItems = radGrid.get_masterTableView().get_selectedItems()
...
你在这里:)