问题:我有一个带有大量JavaScript代码的用户控件(.ascx),在同一页上我有两个用户控件的实例。当该代码运行时,这两个用户控件的行为表现不稳定,因为所有具有相同名称的js对象只能有一个值(包括函数)。JavaScript位于代码后面,并通过"ScriptManager.RegisterStartupScript(.....)"注册。
有没有比这更优雅的解决方案?因为这个原因,将JavaScript放在用户控件中是否只是不良做法?
我已经进行了彻底的搜索,虽然有一些建议的主题,但我没有找到任何有效解决方案,除了逐个查看整个用户控件并将ID附加到引发冲突问题的函数名称。(这需要仔细检查所有代码并确定是否有问题)
示例:
Dim asdf As String = ""
asdf &= "function foo" & UNIQUE_ID & "() {" & vbCrLf
asdf &= .....u get the idea......
asdf &= "}"
有没有比这更优雅的解决方案?因为这个原因,将JavaScript放在用户控件中是否只是不良做法?