我正在显示ajaxcontrol工具包ModalPopupExtender,用于显示按钮点击后面的代码。 在我的按钮上单击我上传文件和发送电子邮件,在电子邮件发送后我显示模态弹出窗口几秒钟然后我将用户重定向到索引页面。
我遇到的问题是ModalPopup只显示我是否重定向 这是我的aspx代码
<input type="btmodel" runat="server" style="display: none">
<ajaxToolkit:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="btmodel"
PopupControlID="Panel1" PopupDragHandleControlID="PopupHeader" Drag="true" DropShadow="true"
OkControlID="OkButton" CancelControlID="CancelButton" BackgroundCssClass="ModalPopupBG">
</ajaxToolkit:ModalPopupExtender>
<asp:Panel ID="Panel1" Style="display: none" runat="server">
<div class="HellowWorldPopup">
<div class="PopupHeader" id="PopupHeader">
Progress</div>
<div class="PopupBody">
<p>
Processing.....</p>
</div>
<div class="Controls">
<input id="btnOkay" type="button" value="Ok" onclick="OkScript()" />
</div>
</div>
</asp:Panel>
和我的按钮点击代码
protected void btnupload_Click(object sender, EventArgs e)
{
//File uploading
//Sending Email
ModalPopupExtender1.Show();
Response.Redirect("Default.aspx");//If I comment this line,then modal is showing
}
我在ModalPopupExtender1.Show()之前也试过这个,但没有运气
System.Threading.Thread.Sleep(1000);
答案 0 :(得分:1)
关键是当用户关闭弹出窗口时进行重定向,而不是在显示时。 编写代码来处理“OnOkScript”或“OnCancelScript”,并在那里进行重定向。
答案 1 :(得分:1)
请注意,在ASP.NET(或任何Web服务器/客户端浏览器环境)中,您的服务器端代码将执行到最后,然后将结果发送到客户端浏览器。它不是一种来回设计的沟通方式。