我有一个带有文本框和复选框的 DataList -
<asp:DataList runat="server" ID="pTextBox" >
<ItemTemplate>
<asp:CheckBox ID="CheckBoxPN" runat="server" Checked='false' OnCheckedChanged="CheckBoxPN_CheckedChanged" AutoPostBack="true" />
<asp:TextBox ID="profileTextBox" runat="server" Text='<%# Container.DataItem.ToString() %>'></asp:TextBox>
</ItemTemplate>
</asp:DataList>
背后的代码在哪里-
protected void CheckBoxPN_CheckedChanged(Object sender, EventArgs e)
{
CheckBox chk = (CheckBox)sender;
DataListItem item = (DataListItem)chk.NamingContainer;
TextBox txt = (TextBox)item.FindControl("profileTextBox");
string text = txt.Text;
TextBox2.Text = txt.Text;
}
当 CheckBox 和 TextBox 在同一个 DataList 中时,这是一种享受。
我的问题是我现在有两个像这样的 DataLists -
<asp:Label ID="Label3" runat="server" Text="Exclude"></asp:Label>
<asp:DataList runat="server" ID="excludeTextBox">
<ItemTemplate>
<asp:TextBox ID="myTextBox" runat="server" Text='<%# Container.DataItem.ToString() %>'></asp:TextBox>
</ItemTemplate>
</asp:DataList>
<asp:DataList runat="server" ID="activeCheck" >
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text="Active"></asp:Label>
<asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Container.DataItem.ToString().Equals("1") %>' OnCheckedChanged="CheckBox1_CheckedChanged" AutoPostBack="true" />
</ItemTemplate>
</asp:DataList>
myTextBox
当我单击CheckBox1
逻辑所在的位置时,我需要访问文本值 -
protected void CheckBox1_CheckedChanged(Object sender, EventArgs e)
{
// access string value in excludeTextBox
}
我怎样才能做到这一点?