没有出现异常详细信息的Javascript弹出窗口

时间:2012-12-08 15:41:56

标签: c# javascript exception popup

我有一个try-catch块:

try{
//stuff here
}catch(Exception x){
    tran.Rollback();
    Response.Write("<script>alert('Error details: " + x + "');</script>");
    Response.Write("<script>alert('Error');</script>");
}

将弹出“错误”消息,但不会显示“错误详细信息”。我错过了什么?我试过x.ToString(),x.Message ......没什么......

3 个答案:

答案 0 :(得分:2)

您可能希望序列化您放入该脚本的字符串。

try 
{

}
catch (Exception ex)
{
    JavaScriptSerializer ser = new JavaScriptSerializer();
    String jsSafeString = ser.Serialize(ex.Message);
    // use this string in your script.
}

答案 1 :(得分:0)

如果您只想在页面上打印消息,只需获取异常类的消息属性

try{
//stuff here
}catch(Exception x){
tran.Rollback();
Response.Write("<script>alert('Error details: " + x.Message + "');</script>");
Response.Write("<script>alert('Error');</script>");

}

答案 2 :(得分:0)

试试这个

cleanMessage是您的exception string

string script = string.Format("alert('{0}');", cleanMessage);
if (page != null && !page.ClientScript.IsClientScriptBlockRegistered("alert")) 
{
    page.ClientScript.RegisterClientScriptBlock(page.GetType(), "alert", script, true /* addScriptTags */);
}