2011-08-11 121 views
0

生成的HTML源代碼ID我使用.NET 4.0和C#。的ClientIDMode如何隱藏在瀏覽器

我有一個asp.net頁面機智的超鏈接。

<asp:HyperLink ID="uxLink" ClientIDMode ="Static" runat="server"></asp:HyperLink> 

在我的代碼後面我用的超級鏈接ID="uxLink"改變一些屬性。

在我的瀏覽器的代碼生成是:

<a id="uxLink" href="/blog/5/test.aspx">Test link</a> 

我需要忽略從瀏覽器生成的源代碼中的ID,所以應該看:

<a href="/blog/5/test.aspx">Test link</a> 

我試着玩ClientIdMode但沒有成功......任何想法如何做到這一點?由於

+0

謝謝您修正 – GibboK

回答

1

最簡單的解決方案是在將頁面呈現爲NULL之前,在後面的代碼中更改控件的ID正當性。

myLink.ID = null; 

這將產生在瀏覽器沒有ID導致:

<a href="/blog/5/test.aspx">Test link</a> 

我覺得這是有用的技巧本網站上:

在我的例子

http://www.dotnetperls.com/remove-id

1

如果刪除ClientIDMode ="Static",該框架將生成的元素的「大獨特的」 ID,不過,會有一個ID。

有一個ID,如果你想處理在客戶端腳本元素是根本。這些ID不應該被刪除。

如果你不想讓他們,就是不使用ASP.NET組件,使用<a>標籤本身。

更新

順便說一句,據說有一種方法做你的ASP.NET 4.想它在這裏描述的內容:http://www.codeproject.com/Tips/208323/Disable-ClientID-for-any-control-on-ASP-NET-Page?display=Print

我還沒有嘗試過,我只是指引你進入一個方向。不過,您應該瞭解沒有ClientID的含義。特別針對Postback控件。閱讀文章。

+0

感謝阿德里安,我也發現一個很簡單的解決辦法(貼在這裏),告訴我你怎麼想感謝 – GibboK

+0

我有一個廁所k對這篇文章,是真的很感興趣。實際上,此刻我直接使用控件的專有ID,因此我可以精確地禁用該ID,而無需通過適配器向我的應用程序添加開銷。 – GibboK

相關問題