在 Web 应用程序的每个页面上注入代码

问题描述 投票:0回答:2

我有一些代码可以禁用鼠标右键单击(是的,我知道,不要射击信使)是否有一种方法可以将其包含在每个页面上,而无需手动将其添加到每个页面上。不幸的是,这些页面不包含页眉或页脚。我在想也许有办法通过 global.asax 来做到这一点?

编辑:需要明确的是,这是一个 ASP.NET WebForms 项目。没有可以将代码放入的页眉或页脚,母版页也不是一个选项。也没有每个页面都包含公共 JavaScript 文件。我需要某种方法将一些 JavaScript 代码注入到 Web 应用程序的每个页面中,因为我真的不想浏览每个页面并手动添加它

javascript c# asp.net webforms right-click
2个回答
0
投票

您可以在 global.asax 中使用 BeginRequest 来实现您的要求:

    protected void Application_BeginRequest(object sender, EventArgs e)
    {
        Response.Write("<script type='text/javascript'>alert('do something');</script>");
    }

我个人建议重构网站以使用母版页或通用 js 文件,但我想这是解决它的商业决策:)

干杯


0
投票

我设法通过使用文字来保留状态。 这是一个存储数据以供在 Google Charts 中使用的示例:

在 .aspx 中

<asp:Literal runat="server" ID="LtlSomeName" />

在.aspx.cs中

LtlSomeName.Text = string.Format("<script>var data = [{0}];</script>", string.Join(",", data.Select(x => JsonConvert.SerializeObject(x))));
© www.soinside.com 2019 - 2024. All rights reserved.