如何在按钮单击事件中的模式弹出扩展器中的iframe中加载页面?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在按钮单击事件中的模式弹出扩展器中的iframe中加载页面?相关的知识,希望对你有一定的参考价值。
如何在按钮单击事件时在模式弹出式扩展程序中的iframe中加载页面?
[嗨,我在页面中有一个带有链接按钮的网格(例如:“ page1”),当我单击链接按钮时,我需要通过传递查询字符串来加载页面(例如:“ page2”)在我已在模式弹出式扩展程序控件中设置的iframe中。我可以通过在标记中添加这段代码来实现这一点
<asp:TemplateField HeaderText="PO NUMBER" HeaderStyle-HorizontalAlign="Center"
ItemStyle-HorizontalAlign="Center" ItemStyle-Width="100px">
<ItemTemplate>
<asp:HiddenField ID="hfPOAID" runat="server"
Value='<%# Bind("POAtID") %>'></asp:HiddenField>
<asp:LinkButton ID="lbtnPO" runat="server" ForeColor="Blue"
Text='<%# Bind("PONUM") %>' CommandName="POview" CommandArgument=
'<%# ((GridViewRow) Container).RowIndex %>' AutoPostBack="True">
</asp:LinkButton>
<cc1:ModalPopupExtender ID="mpeStatus" OnOkScript="__doPostBack('Ok','')"
runat="server" TargetControlID="lbtnPO" PopupControlID="pnlPerson" DropShadow="true"
CancelControlID="ibCancel1" > </cc1:modalpopupextender>
<asp:Panel ID="pnlPerson" runat="server" Style="display: none"
Width="900px" Height="550px" CssClass="modalPopup">
<div style="float: right;">
<asp:ImageButton ID="ibCancel1" runat="server" ImageUrl="~/Images/del.png"
Width="20px" Height="20px" />
</div>
<div>
<table>
<tr>
<td align="center" style="font-size: 14px;">
<b>View Purchase Order</b>
</td>
</tr>
<tr>
<td>
<iframe name="FRAME1" width="800" height="500" frameborder="0"
src='<%#String.Format("ShowPO.aspx?Poid={0}", Eval("POAtID"))%>'>
</iframe>
</td>
</tr>
</table>
</div>
</asp:Panel>
</ItemTemplate>
<HeaderStyle HorizontalAlign="Center"></HeaderStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:TemplateField>
并且在代码隐藏页面中----------------
protected void gvPOCloseRpt_OnRowCommand(object sender, GridViewCommandEventArgs e)
{
try
{
if (e.CommandName == "POview")
{
int index = Int32.Parse(e.CommandArgument.ToString());
HiddenField hfPOAID = (HiddenField)gvPOCloseRpt.Rows[index].FindControl
("hfPOAID");
Session["POID"] = hfPOAID.Value;
string Script = "window.open('http://mak-erp/deverp/Purchase/poprnt.aspx')";
System.Web.UI.ScriptManager.RegisterClientScriptBlock(this,
this.GetType(), "test", Script, true);
}
}
catch (Exception ex)
{
Response.Write(ex);
}
}
但是,如果网格中存在批量数据,则加载页面所需的时间太长,因此,我仅需要在网格中的链接按钮的click事件上加载页面?...
任何人都可以帮助我做到这一点.....
提前感谢...........
Dineshkumar R,
答案
您可以尝试ThickBox弹出页面2。
并且您可以使用url查询字符串来传递POID参数。
查看有关ThickBox的更多信息:http://jquery.com/demo/thickbox/
或者您可以使用ajax实现此目的!
另一答案
[尝试使用jQuery模式弹出窗口引用一个div,而该div又包含一个iframe来显示页面。喜欢:
$('#btnOpenPopup').click(function (e) {
$('#frmLoadPage').attr('src','your_page_url');
$('#divContainer').modal();
return false;
});
<div id="divContainer" class="form-control">
<iframe id="frmLoadPage" ></iframe>
</div>
以上是关于如何在按钮单击事件中的模式弹出扩展器中的iframe中加载页面?的主要内容,如果未能解决你的问题,请参考以下文章