2010-08-23 127 views
2

有没有办法禁用ASP.Net自动命名?禁用Asp.Net自动命名

例如:当我有我的网页上的控件,一个母版里面坐的被命名

theLabel

相反,它被重命名为

ctl00_ContentPlaceHolder1_clist0_rptSelected_ctl05_theLabel

这是我不想要的行为。

回答

3

如果你足够幸运,能够针对ASP.NET 4.0 ...

在你的页面指令,设置ClientIDMOde="Static"。这将会发出与您的控件中的ID完全相同的ID。

所以,如果您有:

<asp:Label ID="example" runat="server" /> 

它会发出这种清洁ID:

<span id="example">something...</span> 
+1

但仅限于.NET 4.0 + – RYFN 2010-08-23 14:41:07

1

如果您使用ASP.NET 4.0则是你可以。

否则,很难。如果你想在客户端ID在J​​avaScript,你可以做这样的事情::

<script type="text/javascript"> 
    function DoSomething(){ 
     alert('<%= Control.ClientID %>'); 
    } 
</script> 
+0

这是我常做,但我一大堆JS的.js文件,即我想留在那里。所以我不能真正使用gator标签。 +1 tho,这将有助于未来的人... – Jason 2010-08-23 14:45:22