捕获异常时使按钮可见

时间:2014-06-05 15:37:11

标签: c# html

我有一个带有不可见按钮和iframe的模态div。 iframe将用户带到外部站点(他们可以在其中输入付款)。然后,iframe将被定向回我的网站,以便我可以记录付款。如果付款处理不正确并引发异常,我希望按钮变为可见,并将iframe重定向到我的错误页面。我无法显示按钮。

这就是Page_Load对于模态的看法。此page_load发生在用户付款后,并被定向回网站。

protected void Page_Load(object sender, EventArgs e)
{
    errorDirect.Visible = false;
    try
    {
        //lots of code to process the payment
    }
    catch (Exception ex)
    {
        errorDirect.Visible = true;
        Response.Redirect("ErrorPage.aspx");
}

这就是模态div的样子,只是一个iframe和一个按钮。

<div id="overlay" runat="server">
    <iframe id="iframe" name="my-iframe" style="width: 850px; height: 700px;" frameborder="0" ></iframe>
    <input type="button" id="errorDirect" Value="Back to Login Page" runat="server" onclick="parent.error()" />
</div>

此网站最初是在没有模态的情况下编写的,有些用户需要继续使用旧版本的网站。 modal div的父类是唯一可以处理模态的类,这就是按钮需要显示并位于重定向iframe之外的原因。我想知道的是为什么我的按钮没有变得可见,以及我能做些什么来解决这个问题。注意:当我调试时,errorDirect.Visible的值仍为false。

1 个答案:

答案 0 :(得分:0)

我不确定它是否可以帮助但是试试这个:

protected void Page_Load(object sender, EventArgs e)
{
    errorDirect.Visible = false;
    try
    {
        //lots of code to process the payment
    }
    catch (Exception ex)
    {
        Application.Current.Dispatcher.Invoke( ()=> errorDirect.Visible = true);
        Response.Redirect("ErrorPage.aspx");
    }
}