2012-02-14 32 views
3

データベースからパーセント値を読み込み、その数値を使用して視覚的な進捗状況を示すバーを作成します。ASP.NET MVCのスタイル属性を動的に変更

 <% 
     if (ViewData["width"] != null){ 
     <div style="width: <%: ViewData["width"] %>px;" 
     </div> 
     }%> 

はもちろん、上記の方法が動作しませんが、うまくいけば、あなたがim達成しようとしてものを見ることができます:私は私のaspxページにこのような何かをする必要があります。 ASP.NET MVCでスタイル属性を動的に変更するにはどうすればよいですか?

答えて

9

あなたはちょうどコードブロックの途中にHTMLを書きました。 HTMLをコードブロックの外に置く必要があります。

<% if (ViewData["width"] != null) { %> 
    <div style="width: <%: ViewData["width"] %>px;"></div> 
<% } %> 

また、あなたはすべての<% %>秒で離れていて、あなたがC#とHTMLはるかに簡単に散在することを可能にするカミソリ言語に切り替えることができます。あなただけのサーバブロックの外側でdivコードを配置する必要があり、あなたの方法を動作するはず

@if (ViewBag.width != null) { 
    <div style="width: @(ViewBag.width)px;"></div> 
} 
+0

これはMVC2ですので、私はViewBagを使用できません。また、これは多数の結果を含む結果セットになるので、私はforステートメントをループするので、コードブロック内にHTMLが必要です。 – BoundForGlory

+2

@userrandomnumbers:HTMLは依然としてif文(および他の制御構造)の中にあります。 C#と解釈される部分のすぐ外側にあります。それを試してみてください! –

+0

あなたは何を知っています、私の方法は動作しました。私は決してそれをテストしなかった。私のコードは色が変わらず、コメントのように見えました。 – BoundForGlory

1

:それはこのようになります。

<% if (ViewData["width"] != null){ %> 
    <div style="width: <%: ViewData["width"] %>px;" 
    </div> 
<% } %> 
関連する問題