客户端脚本覆盖
Client Script Overwrite
我在网页上放置了两个用户控件,在user_control_load事件中,我正在添加一些客户端脚本。
因此,当触发用户控件1页面加载时,它会添加一个脚本。当第2页加载函数被调用时,它再次使用相同的键编写脚本,但在页面的源代码视图中,我看到了用户控件1添加的脚本。我希望用户控件2应该覆盖脚本,因为键是相同的,但它没有发生,我知道如何用相同的键覆盖脚本。
根据MSDN,启动脚本由其密钥和类型唯一标识。具有相同键和类型的脚本被视为重复。只有一个具有给定类型和密钥对的脚本可以向页面注册。尝试注册已注册的脚本不会创建脚本的副本。
Me.Page.ClientScript.RegisterStartupScript(Me.GetType, "aa", "alert('first');", True)
Me.Page.ClientScript.RegisterStartupScript(Me.GetType, "aa", "alert('second');", True)
在上面的代码示例中,只有第一个脚本会被注册,第二个脚本不会被注册。有关更多详细信息,请参阅文档。
我认为不可能覆盖添加了相同键的脚本。由于两个用户控件都在同一页中使用,在一个控件加载中添加脚本,然后在第二个控件加载再次重写有什么用。相反,只需在第二个控件加载中添加脚本。
相关文章:
- 因果报应-如何指向类型脚本覆盖的源地图
- 如何在chrome扩展中的新选项卡上加载url覆盖的脚本
- 如何确定 document.write() 是否会覆盖页面,即当前脚本是否异步加载
- 在用户脚本中覆盖 Chrome 键盘快捷键
- 如何防止外部脚本覆盖我的主.js配置
- 如何在浏览器 JS 控制台中包含脚本时覆盖内容安全策略
- 覆盖另一个脚本中的全日历 JavaScript 函数
- Woocommerce核心脚本覆盖自定义CSS样式
- Blanket.js覆盖了动态加载的脚本文件
- 脚本不允许lightbox覆盖嵌入的Youtube视频(wmode=透明),但其他脚本可以工作
- 如何使用GreaseMonkey脚本覆盖(css)元类属性
- 如何调用Chrome实现的原始' console.log ',如果它已被用户的脚本覆盖
- 如何覆盖由脚本(mediaelement.js)创建的html属性
- 辞职's JS继承脚本.父类的属性被覆盖
- 是否有任何Javascript代码覆盖工具的脚本运行在服务器端(没有浏览器)
- 为什么Segment.io加载程序脚本将方法名称/args推送到似乎被覆盖的队列中
- 客户端脚本覆盖
- 在调用对象函数之前,覆盖外部脚本中的对象函数
- Firefox扩展:如何从加载覆盖中运行脚本
- 内容脚本 CSS 不会覆盖原始内容