当我点击ImageButton(telerik)时,检索一行的ID

本文关键字:检索 一行 ID ImageButton telerik | 更新日期: 2023-09-27 18:27:27

我的网格中每行都有一个ImageButton。当我点击它时,我需要检索所选行的ID。

我的网格是使用ObjectDataSource实现的。

这是我谈论的专栏:

        <telerik:GridTemplateColumn UniqueName="ImageColumnDetails">
            <ItemTemplate>
                <asp:ImageButton ID="ImageButtonDetails" runat="server" ImageUrl="~/img/cle-outil_white.gif"
                     ToolTip="Détails du ticket"
                     OnClientClick='<%# Eval("idAgir","openRadWin({0})") %>;return false;'/>
            </ItemTemplate>
        </telerik:GridTemplateColumn>

如您所见,我需要在aspx页面中指定IdAgir,以便通过URL将其传递给JS函数。感谢您的帮助

当我点击ImageButton(telerik)时,检索一行的ID

确保在DataSource中包含idAgir,按照您正在尝试的实现,这应该有效:

<telerik:GridTemplateColumn UniqueName="ImageColumnDetails">
     <ItemTemplate>
           <asp:ImageButton ID="ImageButtonDetails" runat="server" ImageUrl="~/img/cle-outil_white.gif"
                         ToolTip="Détails du ticket"
                         OnClientClick='<%# String.Format("openRadWin({0});return false;",DataBinder.Eval(Container,"DataItem.idAgir"))%> '/>
      </ItemTemplate>
 </telerik:GridTemplateColumn>

-

我个人通常使用这种方法,并在服务器端修改我的列,但我并没有真正看到区别。

<telerik:GridTemplateColumn HeaderText="User Name" UniqueName="UserName" SortExpression="UserName">
     <ItemTemplate>
         <asp:HyperLink ID="UserNameLink" runat="server" CssClass="lnkAction icon_toolbar_edit_blue"></asp:HyperLink>
     </ItemTemplate>
</telerik:GridTemplateColumn>

protected void radGrid_ItemCreated(object sender, GridItemEventArgs e)
    {
        if (e.Item is GridDataItem)
        {
            var dataBoundItem = e.Item as GridDataItem;
            HyperLink userNameLink = (HyperLink)dataBoundItem.FindControl("UserNameLink");
            userNameLink.Attributes["href"] = "#";
            userNameLink.Attributes["onclick"] = String.Format("selectRow('{0}');return ShowEditUser('{1}');", dataBoundItem.ItemIndex, dataBoundItem.OwnerTableView.DataKeyValues[dataBoundItem.ItemIndex]["id"]);
            userNameLink.Text = dataBoundItem.OwnerTableView.DataKeyValues[dataBoundItem.ItemIndex]["UserName"].ToString();
        }
    }