Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 客户端脚本覆盖_Javascript_Client - Fatal编程技术网

Javascript 客户端脚本覆盖

Javascript 客户端脚本覆盖,javascript,client,Javascript,Client,我在网页上放置了2个用户控件,在用户控件加载事件中,我添加了一些客户端脚本 因此,当触发用户控件1页面加载时,它会添加一个脚本。当调用第2页加载函数时,它再次使用相同的键写入脚本,但在页面的源代码视图中,我看到了由用户控件1添加的脚本。我希望用户控件2应该覆盖脚本,因为键是相同的,但它不会发生。知道如何用相同的键覆盖脚本吗。我认为不可能覆盖使用相同键添加的脚本。由于两个用户控件都在同一个页面中使用,那么在一个控件加载中添加脚本,然后在第二个控件加载中再次重写有什么用呢。相反,只需将脚本添加到第二

我在网页上放置了2个用户控件,在用户控件加载事件中,我添加了一些客户端脚本


因此,当触发用户控件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)
在上面的代码示例中,只有第一个脚本将被注册,第二个脚本不会被注册。有关更多详细信息,请参阅