在捕获异常时显示模式Bootstrap

时间:2018-07-10 17:25:08

标签: c# modal-dialog try-catch

我想在catch异常中显示Bootstrap show模式

银行语言:C# Bootstrap v3.3.7

protected void Page_Load(object sender, EventArgs e)
{
  try 
  {
    if (!IsPostBack) 
    {

    }
  }
  catch (System.Exception ex)
  {
    label.Tex = ex.toString()<
    //show modal here
  }
}

感谢您的时间和帮助。

1 个答案:

答案 0 :(得分:0)

您可以使用ScriptManager

ScriptManager.RegisterStartupScript(this, GetType(),
             "SuccessfullSave",
             @"$('#SuccessfullSave').modal('show'); 
               $('.modal-backdrop').appendTo('#aspnetForm');",
             true);

让我解释一下这段代码:

ScriptManager.RegisterStartupScript是一种允许您将JavaScript注入网页的方法

您传递的参数是:

  1. 页面(this
  2. 类型[使用GetType()]
  3. 脚本的“名称”或键
  4. 实际的JavaScript本身(在本例中为JQuery代码) 显示模式$('#SuccessfullSave').modal('show');,其中#successfullSave是模式的ID,而$('.modal-backdrop').appendTo('#aspnetForm');是要纠正的代码 样式,因此模式位于前面,而不是怪异地放在 灰色可透视背景)
  5. 最后一个参数是一个bool值,表示插入此代码 在脚本标签内

此完成的代码如下所示

protected void Page_Load(object sender, EventArgs e)
{
   try 
   {
      if (!IsPostBack) 
      {

      }
    }
    catch (System.Exception ex)
    {
        label.Text = ex.toString();
        //HERE IS WHERE YOU PUT THIS
        ScriptManager.RegisterStartupScript(this, GetType(),
             "ErrorMessage",
             @"$('#NameOfModal').modal('show'); 
               $('.modal-backdrop').appendTo('#aspnetForm');",
             true);
    }
}

要关闭模式: 无需使用引导程序附带的传统模态消除,您需要调用$('#NameOfModal').modal('show');的反义词,即$('#NameOfModal').modal('hide');,也可以只单击模态之外的