通过asp.net中的javascript警告显示exception消息

我试图通过javascript警告框显示exception消息。

这是示例代码。

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(""); } 

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