使用 asp.net 在页面加载中发送请求时加载图像不起作用



我在securetrans.aspx页面中插入了gif图像,并在securetrans.aspx.cs页面页面加载中编写了支付网关请求代码,这里的问题是加载图像根本没有显示整个请求,并且页面是空的,直到响应到来。 我无法通过多次搜索获得它,希望有人帮助我..

提前感谢...

我的安全传输.aspx.cs代码是

protected void Page_Load(object sender, EventArgs e)
{
string Url = "https://paymentpagetosendrequest";
        string Method = "post";
        string FormName = "form1";

NameValueCollection FormFields = new NameValueCollection();
 FormFields.Add("account_id", "5880");
        FormFields.Add("reference_no", Session["UserID"].ToString());
        FormFields.Add("amount", Session["Amount"].ToString());

FormFields.Add("return_url", "http://responsepage");
 for (int i = 0; i < FormFields.Keys.Count; i++)
        {
            Response.Write(string.Format("<input name="{0}" type="hidden" value="{1}">", FormFields.Keys[i], FormFields[FormFields.Keys[i]]));
        }
}

塞克鲁尔翻译.aspx

Loading... Please Wait!!!
You will be Redirected to Secured Transaction Page....
(Please don't press back or refresh button.)

<asp:Image runat="server" ImageUrl="images/Loader.gif" ID="img" AlternateText="Loader" />

除非您专门对其进行编码以在其他代码之前在您的页面加载中发送响应(这将导致另一个问题,您无法在响应中添加更多内容以进行显示),因为当您运行浏览器的代码时,什么都没有显示,我认为您正在尝试做一些类似显示处理 img 的事情, 我会说建议你使用一些jQuery插件,如blockUI:http://www.malsup.com/jquery/block/

编辑:

好的,我

假设用户通过重定向或其他方式进入您的页面,因此您没有任何按钮,那么我建议您在发送重定向之前在该页面上添加块UI,以便用户可以看到加载消息。或者你可以构建第三个页面,用户将首先被重定向到该页面,除了加载消息和html头meta http-equiv="REFRESH"之外,该页面什么也没得到,实际上将他们引导到你的页面,以便他们可以看到加载图像。在这里检查一些东西:http://www.instant-web-site-tools.com/html-redirect.html

为此,

您需要使用一些 JS,因为页面中的控件仅在页面加载后呈现

在这里尝试

演示,在这里尝试代码。

function ShowProgress() {
    setTimeout(function () {
        var modal = $('<div />');
        modal.addClass("modal");
        $('body').append(modal);
        var loading = $(".loading");
        loading.show();
        var top = Math.max($(window).height() / 2 - loading[0].offsetHeight / 2, 0);
        var left = Math.max($(window).width() / 2 - loading[0].offsetWidth / 2, 0);
        loading.css({ top: top, left: left });
    }, 200);
}
$('form').live("submit", function () {
    ShowProgress();
});

您可以将以下代码放在页面加载事件中:

 string script = "$(document).ready(function () { $('[id*=form1]').load(); });";
 ClientScript.RegisterStartupScript(this.GetType(), "load", script, true);

其中"form1"是表单标记的名称。

相关内容

  • 没有找到相关文章

最新更新