asp.net – 多个用户控件和JavaScript
发布时间:2020-09-06 03:07:57 所属栏目:asp.Net 来源:互联网
导读:我在用户控件中包含一个JS文件.主机页面具有用户控件的多个实例. JS文件有一个全局变量,用作JS函数的标志.我需要将此变量的范围限制为用户控件.不幸的是,当我有多个控件实例时,会覆盖变量值. 在这样的情况下,推荐的方法是什么? 我建议重构你的代码,使所有常
|
我在用户控件中包含一个JS文件.主机页面具有用户控件的多个实例. JS文件有一个全局变量,用作JS函数的标志.我需要将此变量的范围限制为用户控件.不幸的是,当我有多个控件实例时,会覆盖变量值. 在这样的情况下,推荐的方法是什么? 解决方法我建议重构你的代码,使所有常见的JS逻辑存储在一个地方,而不是存储在每个UserControl中.这将大大减少页面大小.您可以将UserControl的id传递给常用的JS方法,以区分UserControl. 对于限制’UserControl’变量范围的问题,您可以存储某种键/值结构以保持您的UserControl特定值 – Key将是UserControl clientID,并且值将是您的变量对此很感兴趣. 例如: var UCFlags = new Object(); //set the flag for UserControl1: UCFlags["UC1"] = true; //set the flag for UserControl2: UCFlags["UC2"] = false; 要访问它们,只需将UserControl的ClientID传递给UCFlags数组: myFlag = UCFlags["UC1"]; 在服务器端,您可以用常量字符串“UC1”或“UC2”替换 <%= this.ClientID %> 像这样: myFlag = UCFlags["<%= this.ClientID %>"]; 您仍然可以使用<%= this.ClientID%>这里的语法虽然JS的大部分都在一个单独的文件中;简单地说 UCFlags["<%= this.ClientID %>"] = value; 在调用嵌入JS文件之前. (编辑:南阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 确定当前页面是否需要授权?
- asp.net-mvc – 如何在ASP.NET MVC部分视图中使用匿名列表作
- asp.net – 我可以重新发布或携带POST数据(如果是这样,我可
- ASP.NET MVC与Webforms:替换WebForms控件
- .net – 加密ApplicationServices ConnectionString
- ASP.NET 根据汉字获取汉字拼音的首字母(含多音字)
- webforms – ASP.Net Core 1.0是否支持WebForm项目
- 单元测试 – 单元测试项目不能参考MVC项目
- asp.net后台cs中的JSON格式变量在前台Js中调用方法(前后台示
- 将mvc 5应用程序连接到Azure中的ACS?
推荐文章
站长推荐
- asp.net-mvc – 在MVC ActionLink中使用Knockout
- asp.net-mvc – MVC Razor – 如何向自己提交表单
- asp.net – 如何添加.aspx页面到现有的MVC 4项目
- asp.net-mvc – ASP.Net MVC中的自我AJAX更新部分
- IIS和ASP.Net Web开发服务器之间的行为差异?
- 所有我使用IO的动作都是异步的?
- ASP.NET core Web中使用appsettings.json配置文件
- 无法通过IP地址连接ASP.NET开发服务器(VS2010)
- asp.net-mvc – Visual Studio 2010 Full和ASP.N
- ASP.NET页面验证
热点阅读
