0

我正在使用更新面板。中继器中有很多复选框,我想使用更新面板触发器,但我无法访问复选框控件。我怎样才能访问它?

<asp:UpdatePanel ID="up" runat="server">
    <ContentTemplate>
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="checkbox1"
            EventName= "CheckedChanged" />
    </Triggers>
</asp:UpdatePanel>
4

2 回答 2

1

您可以将此代码添加到ItemCreated of repeater

ScriptManager scriptManager = ScriptManager.GetCurrent(this);
var cbx = (CheckBox)e.Item.FindControl("checkbox1") ;
if(cbx != null)
{
    cbx.CheckedChanged+= CheckBox1_CheckedChanged;
    scriptManager.RegisterAsyncPostBackControl(cbx);
}
于 2012-09-27T12:19:54.693 回答
1

控件引用的AsyncPostBackTrigger控件必须与作为触发器的更新面板位于同一命名容器中。不支持基于其他命名容器中的控件的触发器。

你可以ScriptManager.RegisterAsyncPostBackControl改用。

于 2012-09-27T12:34:28.390 回答