按钮回发错误

本文关键字:错误 按钮 | 更新日期: 2023-09-27 18:17:23

我有一个updatepanel与listview里面。该面板每隔10秒刷新一次,listview源被更新并重新绑定。我的listview有一些imagebuttons,问题来了。当我点击任何listview按钮时,我得到一个错误:

"无效的回发或回调参数。"错误。

我正在尝试我在搜索中看到的一切,不,我不会将验证设置为false。

这是我的列表的简化模板。

<asp:UpdatePanel runat="server" ID="pnlRegistro" ClientIDMode="Static" OnLoad="pnlRegistro_Load">
    <ContentTemplate>
        <asp:ListView runat="server" ID="lvRegistro" OnPreRender="lvRegistro_PreRender" >
            <LayoutTemplate>
                <!-- Unread notification count -->
                <span runat="server" id="spanRegistroCount" class="mws-dropdown-notif">
                    <asp:Label ID="lblRegistroCount" runat="server" Text="0"></asp:Label>
                </span>
            </LayoutTemplate>
            <ItemTemplate>
                <li class="<%# Convert.ToInt32(Eval("RegistroHorarioId"))==0?"read":"unread"%>">
                    <a>
                        <div style="width: 80%; float: left;">
                            <span class="message" <%#Eval("SpanColor")%>>
                                <%#Eval("Status")%>
                            </span>
                        </div>
                        <div style="float: right">
                            <asp:ImageButton runat="server" ID="btnRegistro" OnClick="btnRegistro_Click"/>
                        </div>
                    </a>
                </li>
            </ItemTemplate>
        </asp:ListView>
    </ContentTemplate>
</asp:UpdatePanel>

我能做些什么来修复这个错误,并触发"btnRegistro_Click"事件?

按钮回发错误

更新面板用于更新部分页面,而不是进行完整的回发。

所以,你必须添加PostBackTrigger sync或async任何你想要的,因为你正在使用更新面板和更新面板事件是在触发器中定义的,以避免完全回发,所以最有可能你想要一个async回发触发器。

在内容模板结束标签(</ContentTemplate>)后添加按钮事件触发器:

 </ContentTemplate>
 <Triggers> 
 <asp:AsyncPostBackTrigger ControlID="btnRegistro" EventName="Click" /> 
</Triggers>
</asp:UpdatePanel>

你还应该阅读理解ASP。. NET AJAX UpdatePanel触发器