c# - 如何在生命周期中删除客户端脚本资源?

标签 c# javascript .net asp.net asp.net-ajax

在基类中,预渲染将 Javascript 添加到页面。在我的派生类中,我想用我自己的资源脚本之一替换 Javascript。

如果在基类中像这样添加脚本:

this.Page.ClientScript.RegisterClientScriptResource(typeof(GeomappingEditor), "SomeSpace.Resources.Scripts.Geomapping.js");

那我能不能做这样的事情:

protected override void OnPreRender(EventArgs e)
{
    base.OnPreRender(e);

    //HOW TO OVERWRITE JAVASCRIPT FILE HERE?
}

我之所以认为这可能是因为有时 Javascript 会使用这样的键添加到页面上:

this.Page.ClientScript.RegisterClientScriptInclude("geomapping", this.ApiScript);

所以我知道我可以在页面中添加另一个脚本,“geomapping”是关键,它将覆盖以前的脚本。但是对于“RegisterClientScriptResource”似乎没有这样的键。关于如何实现这一目标的任何想法?

最佳答案

在基类中,添加一个虚拟/可覆盖方法来注册脚本,在基类中,您覆盖该方法而不调用基实现。那会覆盖它。

另外,

关于c# - 如何在生命周期中删除客户端脚本资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4329571/

相关文章:

javascript - 在 php 文件中向下滚动页面加载

javascript - JQuery Validate 插件有效方法总是返回 true

c# - IHttpAsyncHandler 和 Request.Filter

c# - 在 C# 中解析 JSON

C# 不能在匿名方法体内使用 ref 或 out 参数

c# - 防止表格卡住

javascript - jQuery:如何停止 AJAX 函数转义用于 POST 数据的 JSON 字符串

c# - 使用 MethodCallExpression 的表达式调用 "Any"

c# - SemaphoreSlim 没有限制任务

c# - 一旦第二个窗口关闭,属性就会恢复为原始值