Я хотел бы скрыть / показать TableRow через ASP.NET AJAX, когда установлен флажок.
У меня есть этот код для флажка:
<asp:UpdatePanel ID="UpdatePanel2" runat="server">
<ContentTemplate>
<asp:CheckBox runat="server" ID="cbViewPages" Checked="true" OnCheckedChanged="OnViewPages" AutoPostBack="true"/>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="cbViewPages" EventName="CheckedChanged"/>
</Triggers>
</asp:UpdatePanel>
и это для TableRow
<asp:TableRow runat="server" ID="PagesRow">
<asp:TableCell VerticalAlign="Middle">Test Row</asp:TableCell>
</asp:TableRow>
Этот метод вызывается при нажатии флажка:
protected void OnViewPages(object sender, EventArgs e)
{
if(cbViewPages.Checked)
{
PagesRow.Visible = true;
}
else
{
PagesRow.Visible = false;
}
}
OnViewPages определенно вызывается, я вижу это через отладчик.
И если я удаляю код AJAX, OnViewPages будет скрыт / не скрыт при необходимости.
Почему эта функция скрытия / отображения не работает с кодом AJAX?
Doh!
У меня есть частичный ответ, TableRow не находится в панели обновления.
Но вы не можете поместить UpdatePanel вокруг TableRow.
Так что это мой новый вопрос, как разместить UpdatePanel вокруг TableRow?