2012-02-21 16 views
1

これを見てください。今は希望的な考え方です。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を適用したいですか? –

+0

この例では、私はそれにクラスyesを与えたいと思います。しかし、runat = "server"属性を持たないHTML要素を操作するという考え方があります。 – BjarkeCK

+0

あなたはそれをサーバー側で行う必要がありますか? –

答えて

2

さてあなたはこのようになりますサーバータグ<%=[...]%>を適用することができます:

私はあなただけ分離コードを経由してそれを実行したい場合は、運の外にあるかもしれない怖いよりも
<li><a href="www.google.com" class='<%=1==1?"selected":""%>'>google</a></li> 

その他。

+0

さて、私は必要なコードmyselvfを書く必要があると思います:/ 私が終わったら、誰もそれに干渉されると思いますか?それともやってみたい変態ですか? – BjarkeCK

関連する問題