UpdatePanel触发器错误.无法在UpdatePanel中的触发器的关联控件上找到事件
本文关键字:UpdatePanel 触发器 事件 控件 错误 关联 | 更新日期: 2023-09-27 18:13:50
我有asp:UpdatePanel和asp的触发器的麻烦。净WebForms。触发器无法在我的UpdatePanel上找到事件。我见过很多例子,我复制了他们的实现,但不能得到正确的。我是WebForms的新手。请帮助。谢谢你。
<tr>
<td class="label1">Will use ETL?</td>
<td>
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="updatePanel1">
<ContentTemplate>
<asp:RadioButtonList ID="useEtl" runat="server" RepeatDirection="Horizontal" Width="120" OnSelectedIndexChanged="useEtl_SelectedIndexChanged">
<asp:ListItem Text="Yes" Value="1" />
<asp:ListItem Text="No" Value="0" />
</asp:RadioButtonList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td class="label1">ETL Box</td>
<td>
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="updatePanel2">
<ContentTemplate>
<asp:TextBox ID="etlBox" runat="server"/>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="useEtl" EventName="OnSelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel>
</td>
</tr>
按如下方式修改代码:
<asp:AsyncPostBackTrigger ControlID="useEtl" EventName="SelectedIndexChanged" />
您提到的事件名称是错误的,这是不工作的原因。
您也可以尝试使用以下代码获取相同的
UpdatePanel1.Triggers.Add(new AsyncPostBackTrigger()
{
ControlID = useEtl,
EventName = "SelectedIndexChanged", // this may be optional
}
td>
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="updatePanel1">
<ContentTemplate>
<asp:RadioButtonList ID="useEtl" runat="server" RepeatDirection="Horizontal" AutoPostBack="true" Width="120" OnSelectedIndexChanged="useEtl_SelectedIndexChanged">
<asp:ListItem Text="Yes" Value="1" />
<asp:ListItem Text="No" Value="0" />
</asp:RadioButtonList>
</ContentTemplate>
</asp:UpdatePanel>
</td>
<td class="label1">ETL Box</td>
<td>
<asp:UpdatePanel runat="server" UpdateMode="Conditional" ID="updatePanel2">
<ContentTemplate>
<asp:TextBox ID="etlBox" runat="server" Enabled="false"/>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="useEtl" EventName="SelectedIndexChanged" />
</Triggers>
</asp:UpdatePanel>
</td>