2012-02-14 5 views
3

데이터베이스에서 백분율을 읽은 다음 해당 숫자를 사용하여 시각적 진행률을 나타내는 막대를 만듭니다.ASP.NET MVC에서 스타일 속성을 동적으로 변경하십시오.

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

은 물론 위의 방법이 작동하지 않는, 그러나 희망 당신은 메신저 달성하기 위해 노력하고 무엇을 볼 수 있습니다 내 aspx 페이지에 같은 것을 할 필요가있다. ASP.NET MVC에서 동적으로 스타일 속성을 변경하려면 어떻게해야합니까?

답변

9

방금 ​​코드 블록 중간에 HTML을 작성했습니다. HTML을 코드 블록 외부에 놓아야합니다.

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

양자 택일로, 당신은 모든 <% %>의 페지하고 C# 및 HTML 훨씬 쉽게 산재 수있는 면도기 언어로 전환 할 수 있습니다. 그것은 다음과 같습니다

@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

당신의 방법은 그냥 서버 블록의 외부 div 코드를 삽입 할 필요가 작동합니다.

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