c# - 在 asp.net 中通过 javascript alert 显示异常信息

标签 c# javascript 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);

关于c# - 在 asp.net 中通过 javascript alert 显示异常信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6450235/

相关文章:

c# - 在 C# 中找到直线与 X 轴的最小角度

重写与隐藏基类方法时的 C# 作用域差异

javascript - 如何检测一个点是否在圆内?

c# - 为什么我必须修改 web.config 才能启用调试?

asp.net - 需要有关创建新 ASP.NET 应用程序的建议

asp.net - 如何使用 JQUERY 在更改事件上禁用下拉列表?

C# | MS BotBuilder | DefaultIfException 的用法

c# - 通过引用列名查找列索引?

javascript - `tsc` 命令是否接受 .d.ts 文件?

javascript - 使用 styled-components 的类型定义错误