ASP.NET从另一个updatepanel中的repeater按钮控制updatepanel
我有两个更新面板,第一个更新面板(up1)包含一个中继器控件,它只是重复一个按钮控件。在up1中单击其中一个按钮时,我只想使用up1中按钮传递的参数更新第二个更新面板(up2)。 基本上,每个按钮都有一个会话ID,因此当单击up2时,将从具有该ID的会话中获取所有消息。由于其他功能,需要有两个更新面板ASP.NET从另一个updatepanel中的repeater按钮控制updatepanel,asp.net,ajax,updatepanel,Asp.net,Ajax,Updatepanel,我有两个更新面板,第一个更新面板(up1)包含一个中继器控件,它只是重复一个按钮控件。在up1中单击其中一个按钮时,我只想使用up1中按钮传递的参数更新第二个更新面板(up2)。 基本上,每个按钮都有一个会话ID,因此当单击up2时,将从具有该ID的会话中获取所有消息。由于其他功能,需要有两个更新面板 <asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" EnablePartialRendering="true" r
<asp:ScriptManager ID="ScriptManager1" EnablePageMethods="true" EnablePartialRendering="true" runat="server" >
</asp:ScriptManager>
<asp:UpdatePanel runat="server" ID="up1" OnLoad="up1_Load">
<ContentTemplate>
<asp:Repeater ID="Repeater1" runat="server">
<ItemTemplate>
<asp:Button ID="Button1" runat="server"
CommandName="conversationID"
CommandArgument='<%# Eval("conversation_id") %>' />
</ItemTemplate>
</asp:Repeater>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="up2" runat="server">
<ContentTemplate>
<asp:Repeater ID="Repeater2" runat="server">
<ItemTemplate>
<p><%#Eval("message")%></p>
</ItemTemplate>
</asp:Repeater>
</ContentTemplate>
</asp:UpdatePanel>
我已经尝试在代码中传递命令参数,但它就是不起作用!有人能给我指一下正确的方向吗
非常感谢因为UpdatePanel用于动态内容(如AJAX),所以更新第二个面板的最佳位置是在客户端(如JavaScript),而不是在服务器的代码中
此外,如果.aspx文件中没有代码块,代码将更干净。例如在代码隐藏中为
button1
声明一个Button
变量,并在页面的PageLoad
或PageInit
中设置CommandArgument属性,而不是使用内联代码和Eval查找AsyncPostBackTriggers,以获取客户端控件来触发UpdatePanel来执行部分操作页面刷新。我已经多次用这种方式将两个更新面板绑在一起
<UpdatePanel>
<Triggers>
<asp:AsyncPostBackTrigger ControlID=”up1” />
</Triggers>
<ContentTemplate>
....
</ContentTemplate>
</UpdatePanel>
....
我不记得是否可以将实际的UpdatePanel链接在一起,或者是否必须为up1 UpdatePanel中的每个repeater按钮添加一个触发规则我已经尝试向按钮添加一个onclick事件,该事件将会话id号传递给javascript代码中的函数。然后在我的codebehind中调用一个方法来更新updatepanel。例如:函数CallMyMethod(cid){PageMethods.MyMethod(cid,MyMethod_Result)}问题是它调用的webmethod子例程必须“共享”才能进行通信,例如:Public shared Sub MyMethod(ByVal cid为整数)…获取sql数据,绑定到updatepanel2 End Sub中的repeater问题是,当我尝试绑定数据时,会出现以下错误:无法从共享方法中引用类的实例成员