0

谁能帮我获取保存在 DataControl 的 ItemTemplate 中的控件的 ClientID?我的控制是这样的。

<asp:ListView ID="ListView1" runat="server">
            <LayoutTemplate>
                 <table ID="itemPlaceholderContainer" runat="server" border="0" style="">
                    <tr runat="server">
                        <td>Contacts</td>
                    </tr>
                    <tr id="itemPlaceholder" runat="server" >

                    </tr>
                </table>
            </LayoutTemplate>
            <ItemTemplate>
                 <tr style="">
                    <td>
                        <asp:CheckBox ID="chkFlag" runat="server" AutoPostBack="true" />
                    </td>                
                    <td><asp:Label ID="LabelContacts" runat="server" Text='<%#Eval("cont_name") %>'></asp:Label>
                    <asp:HiddenField ID="hfGSM" runat="server" Value='<%#Eval("cont_gsm") %>' />
                    </td>
                </tr>
            </ItemTemplate>
            </asp:ListView>

我需要从这个 ListView 中获取 CheckBox 的 ClientID。有谁知道该怎么做?请帮助我

4

2 回答 2

0

在 ItemDataBound 事件处理程序中...您可以像这样找到控件并获取客户端 ID

((CheckBox)e.Item.FindControl("chkFlag")).ClientID
于 2011-09-21T08:09:24.870 回答
0

例如,如果您将它分配给 CheckBox 的属性,或者测试它在 CheckBox 的标签中呈现它,这样的东西应该可以工作:

<asp:CheckBox ID="chkFlag" runat="server" AutoPostBack="true"
  onClick="alert('<%# ((Control)Container).FindControl("chkFlag").ClientID %>')" />

PS我只是从这里复制的,打开新问题时在SO中搜索,还是我们要爆炸他们的SQL?:D

如何在 ASP.NET GridView 中找到控件的客户端 ID?

于 2011-09-21T07:57:07.093 回答