我试图通过 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; 它就会失败
任何想法?
您需要对其进行编码,例如使用JavaScript序列化器 http://msdn.microsoft.com/en-us/library/system.web.script.serialization.javascriptserializer.aspx因为如果消息包含一些转义字符,例如'
or "
这肯定会破坏你的 JavaScript:
var message = new JavaScriptSerializer().Serialize(ex.Message.ToString());
var script = string.Format("alert({0});", message);
ScriptManager.RegisterClientScriptBlock(page, page.GetType(), "", script, true);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)