无runat =“server”操纵HTML元素

问题描述:

看看这个;现在,这只是一厢情愿的想法。无runat =“server”操纵HTML元素

Default.aspx的

<ul id="menuemenue" runat="server"> 
    <li><a href="www.google.com">google</a></li> 
    <li><a href="www.yahooo.com">yahooo</a></li> 
    <li><a href="www.stackoverflow.com">stackoverflow</a></li> 
</ul> 

Default.aspx.cs

foreach (var item in menu.Elements("a")) 
    { 
     if (item.Attribute("href") == currentPageUrl) 
     { 
      item.addClass("selected"); 
     } 
    } 

我知道我可以写我自己的小HTML引擎(或任何你想调用做到这一点它)并操纵menu.innerHtml。但是我有另一种选择吗?

更新

我知道它可以用JavaScript/jQuery的完成,并且在不同的方式100。但想象一下,如果你能像我的例子那样做,你的C#代码将会如何清洁。

+0

你只是想将CSS应用到它? – 2012-02-21 15:12:50

+0

那么在这个例子中,我想给它一个类是的。但更多的是操纵HTML元素而没有runat =“server”属性的概念。 – BjarkeCK 2012-02-21 15:15:40

+0

你需要做服务器端吗? – 2012-02-21 15:16:02

那么你可以只适用于服务器标签<%=[...]%>这将是这个样子:

比我怕你可能是出于运气,如果你想通过只隐藏代码做
<li><a href="www.google.com" class='<%=1==1?"selected":""%>'>google</a></li> 

其他。

+0

好吧,我想我需要编写必要的代码myselvf然后:/ 当我完成时,认为任何人都会对它感兴趣吗?或者我是一个想要这样做的怪胎? – BjarkeCK 2012-02-21 15:37:42