C# 如何在iframe中加载一个页面,该页面位于按钮单击事件的模式弹出扩展程序中? 如何在iframe中加载位于按钮单击事件的模式弹出扩展程序中的页面?

C# 如何在iframe中加载一个页面,该页面位于按钮单击事件的模式弹出扩展程序中? 如何在iframe中加载位于按钮单击事件的模式弹出扩展程序中的页面?,c#,asp.net,iframe,linkbutton,modal-popup,C#,Asp.net,Iframe,Linkbutton,Modal Popup,您好,我有一个页面中带有链接按钮的网格(例如:“page1”),当我单击链接按钮时,我需要通过在iframe中传递查询字符串来加载页面(例如:“page2”),iframe是我在模式弹出扩展控件中设置的。我可以通过在标记中添加这段代码来实现这一点 <asp:TemplateField HeaderText="PO NUMBER" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center"

您好,我有一个页面中带有链接按钮的网格(例如:“page1”),当我单击链接按钮时,我需要通过在iframe中传递查询字符串来加载页面(例如:“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>
但是,如果网格中有大量数据,则加载页面所需的时间太长,因此,我只需要在网格中链接按钮的单击事件上加载页面

谁能帮我做这件事

提前谢谢

迪内斯库马尔


您可以尝试使用ThickBox弹出页面2

您可以使用url查询字符串来传递POID参数

请参阅有关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>
$('btnOpenPopup')。单击(函数(e){
$('frmLoadPage').attr('src','your'u page'u url');
$('#divContainer').modal();
返回false;
});

感谢您对我的查询给予的关注…….我对使用thickbox不太熟悉,如果您建议我使用ajax,我可以用哪种方式来实现?…首先,您应该在第1页中包含jquery文件thickbox.css和thickbox-compressed.js。然后您可以使用类似于:
的代码来弹出第2页。
$('#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>