Как использовать Ajax UpdateProgress с Iframe в ASP.NET - PullRequest
2 голосов
/ 25 августа 2011

Я пытаюсь показать изображение UpdateProgress с помощью iframe. Но это не работает. Я использую этот iframe для отображения нескольких страниц. Мой код выглядит следующим образом ..


        <iframe 
            runat="server" id="Iframe2" height="565" width="100%"   scrolling="no" 
            style="overflow-x:hidden;" frameborder="0" marginheight="0" marginwidth="0" 
            vspace="0" hspace="0">                
        </iframe>  

     <asp:HiddenField ID="hdfIndex" runat="server" />                         
     </ContentTemplate>
            <Triggers>
                 <asp:AsyncPostBackTrigger ControlID="ibtnPrevious" EventName="Click" />
                 <asp:AsyncPostBackTrigger ControlID="ibtnNext" EventName="Click" />
                 <asp:AsyncPostBackTrigger ControlID="ibtnPage1" EventName="Click" />
                 <asp:AsyncPostBackTrigger ControlID="ibtnPage2" EventName="Click" />
                 <asp:AsyncPostBackTrigger ControlID="ibtnPage3" EventName="Click" />
                 <asp:AsyncPostBackTrigger ControlID="ibtnPage4" EventName="Click" />
                 <asp:AsyncPostBackTrigger ControlID="ibtnPage5" EventName="Click" />
            </Triggers>


Но когда я использую его без iframe, он работает хорошо.

1 Ответ

1 голос
/ 25 августа 2011

На мой взгляд, лучший способ сделать это с помощью iframes - указать iframe на страницу aspx, на которую возложена только ответственность за перенаправление:

<iframe runat="server" id="Iframe2" height="565" width="100%"   scrolling="no" 
            style="overflow-x:hidden;" frameborder="0" marginheight="0" marginwidth="0" 
            vspace="0" hspace="0" src="Waiting.aspx?page=WebPageTarget.aspx">                
        </iframe>

А в Wating.aspx.cs:

protected void Page_Load(object sender, EventArgs e)
{
  var s = Request.QueryString["page"];
  ClientScript.RegisterStartupScript(GetType(), "gotorealpage",
                                     "window.location=\"" + s + "\";", true);
}

Конечно, в Waiting.aspx вы помещаете ваше изображение ожидания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...