0

我在securetrans.aspx页面中插入了gif图像,并在securetrans.aspx.cs页面页面加载中编写了支付网关请求代码,这里的问题是加载图像根本没有显示在整个请求中并且页面是空的,直到回应来了。搜了好几遍都找不到,希望有大佬帮帮我。。

提前致谢...

我的securetrans.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]]));
        }
}

securetrans.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" />
4

3 回答 3

0

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

编辑:

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

于 2012-12-11T05:54:38.377 回答
0

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

在此处尝试DEMO并在此处尝试CODE

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();
});
于 2012-12-11T06:18:35.667 回答
0

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

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

其中“form1”是表单标签的名称。

于 2016-07-21T06:42:57.313 回答