簡體   English   中英

通過asp.net中的javascript警告顯示異常消息

[英]Display exception message through javascript alert in asp.net

我試圖通過javascript警告框顯示異常消息。

這是示例代碼。

public static void HandleException(Page page, Exception ex)
{
    string message = ex.Message.ToString();
    ScriptManager.RegisterClientScriptBlock(page, page.GetType(), "", "alert('"+message+"');", true);

}

如果我給字符串變量提供文字值,它就會運行。 例如

string message = "Hello World";

但如果我給message = ex.Message,它就會失敗;

任何的想法?

你需要對它進行編碼,例如使用JavaScriptSerializer,因為如果消息包含一些轉義字符,如'"這肯定會破壞你的javascript:

var message = new JavaScriptSerializer().Serialize(ex.Message.ToString());
var script = string.Format("alert({0});", message);
ScriptManager.RegisterClientScriptBlock(page, page.GetType(), "", script, true);
try    
{    
    //do some thing    
}    
catch (Exception ex)
{    
    Response.Write("<script language='javascript'>alert('" + 
        Server.HtmlEncode(ex.Message) + "')</script>");    
}

您的ex.Message是否包含任何“字符”? 他們可能需要逃脫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM