在页面中显示列表时,为了能详细显示该条记录的详细信息,我们一般会设置一个超级链接,点击后打开一个页面显示该记录的详细信息。用例如 abc.aspx?id=3这样的格式将id传递到打开页面,然后在调用后台程序将该id对应的记录查询出来并显示。
现在我想使用ajax的ModalPopupExtender控件来实现这样的效果,这样就不用跳转到其他页面就可以显示列表中一条记录的详细信息。
但是ModalPopupExtender在打开panel时,并不能执行事件,所以我就没有办法调用后台的方法来查询数据库,另外如何将id传给后台也是一个问题。
望知道如何使用ModalPopupExtender显示详细信息的朋友不吝赐教,谢谢!!!!
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------
ModalPopupExtender其实本来就只能算个js控件,根本没任何服务器端的操作
asp.net的几十个组件里面大部分都这么鸡肋,拿着js控件来冒充ajax控件
要实现你说的功能,ModalPopupExtender实现的是一个弹出对话框的功能,而对话框里面你需要异步读取数据显示出来则需要另外再用控件实现,可以嵌入一个updatepanel
------解决方案--------------------------------------------------------
现在一个问题分成两个
1、怎么弹出框,这个用ModalPopupExtender,里面嵌入一个udpatepanel
2、怎么点击不同的链接显示不同的内容
- XML code
<asp:ScriptManager ID="ScriptManager1" runat="server"> </asp:ScriptManager> <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> <asp:LinkButton ID="LinkButton1" runat="server" CommandArgument="1" onclick="LinkButton1_Click">LinkButton</asp:LinkButton> <asp:LinkButton ID="LinkButton2" runat="server" CommandArgument="2" onclick="LinkButton1_Click">LinkButton</asp:LinkButton> <asp:LinkButton ID="LinkButton3" runat="server" CommandArgument="3" onclick="LinkButton1_Click">LinkButton</asp:LinkButton> </ContentTemplate> </asp:UpdatePanel>
------解决方案--------------------------------------------------------
ModalPopupExtender1.Show();
------解决方案--------------------------------------------------------
你是通过点击GridView中的按钮来弹出ModalPopupExtender吗
------解决方案--------------------------------------------------------
[code=C#][/code]
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Reject")
{
int rowIndex = ((GridViewRow)(((Button)(e.CommandSource)).Parent.Parent)).RowIndex;
ModalPopupExtender2.Show();
ModalPopupExtender1.Hide();
}
if (e.CommandName == "Detail")
{
ModalPopupExtender1.Show();
ModalPopupExtender2.Hide();
BindModalUp(e.CommandArgument.ToString());//自定义方法绑定数据,传参数
}
}