Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.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
C# 动态创建<;部门>;元素而不重写其ID_C#_Asp.net - Fatal编程技术网

C# 动态创建<;部门>;元素而不重写其ID

C# 动态创建<;部门>;元素而不重写其ID,c#,asp.net,C#,Asp.net,我有一个元素,我想动态地向其中添加一些HTML元素。那部分似乎工作得很好。以下是HTML: 在我的代码隐藏中,添加HTML锚按预期工作;但是,当页面呈现时,id将更改为“workArea_crumbBar”(这都在母版页中) 我尝试在中使用适当的id动态创建一个,但这也在id前面加上了“workarea” 我还有其他代码依赖于元素的id。有什么方法可以防止IIS更改主元素或嵌套元素的id吗?尝试如下更改您的div: <div id="crumbBar" runat="server" Cl

我有一个
元素,我想动态地向其中添加一些HTML
元素。那部分似乎工作得很好。以下是HTML:

在我的代码隐藏中,添加HTML锚按预期工作;但是,当页面呈现时,id将更改为“workArea_crumbBar”(这都在母版页中)

我尝试在
中使用适当的id动态创建一个
,但这也在id前面加上了“workarea”


我还有其他代码依赖于
元素的id。有什么方法可以防止IIS更改主元素或嵌套元素的id吗?

尝试如下更改您的div:

<div id="crumbBar" runat="server" ClientIDMode="Static" /> 

事实上,这不是IIS,而是ASP.Net Framework的行为。控件组织在树中,最终的客户端id将是所有祖先id串联的结果

目标是避免两个控件之间的Id冲突。冲突的一个例子是当您使用创建用户控件时,例如:
。如果实例化两次用户控件,则两个控件在客户端将具有相同的Id,而不具有此行为


这意味着您必须谨慎地使用此属性,因为它可能会导致一些模糊的问题。如果可以的话,你应该寻找另一个解决方案。在构建了12年的.Net应用程序之后,我再也不用使用这个属性了。可能还有其他选择。

尝试如下更改您的div:

<div id="crumbBar" runat="server" ClientIDMode="Static" /> 

事实上,这不是IIS,而是ASP.Net Framework的行为。控件组织在树中,最终的客户端id将是所有祖先id串联的结果

目标是避免两个控件之间的Id冲突。冲突的一个例子是当您使用创建用户控件时,例如:
。如果实例化两次用户控件,则两个控件在客户端将具有相同的Id,而不具有此行为


这意味着您必须谨慎地使用此属性,因为它可能会导致一些模糊的问题。如果可以的话,你应该寻找另一个解决方案。在构建了12年的.Net应用程序之后,我再也不用使用这个属性了。可能还有其他选择。

您使用的是asp classic和c#吗?怎么用?iis的相关性如何?客户端生成的ID有什么问题?塔特说,尝试添加一些asp经典,这篇文章有一个代码隐藏文件,它正在做动态部分。IIS是相关的,因为有些东西正在改变我编写的html,而不是我的代码。史蒂夫,这解决了我的问题-谢谢!!生成的ID的问题是其他代码依赖于未生成的ID。您是否使用asp classic和c#?怎么用?iis的相关性如何?客户端生成的ID有什么问题?塔特说,尝试添加一些asp经典,这篇文章有一个代码隐藏文件,它正在做动态部分。IIS是相关的,因为有些东西正在改变我编写的html,而不是我的代码。史蒂夫,这解决了我的问题-谢谢!!生成的ID的问题在于,其他代码依赖于未生成的ID。