보기

2011-08-11 5 views
0

마스터 중첩 면도기 뷰에서 CSS에 대한 값을 전달 I는 "마스터"뷰 (_MasterLayout.cshtml)가보기

이 갖는 "주"

<div id="main" class="xxx"> 
</div> 
의 ID와 사업부,

_MasterLayout.cshtml에서 상속 한보기에서이 div의 클래스 값을 설정할 수 있어야합니다 (예 : '제품 페이지'로 설정).

어떻게해야합니까? 일하는 것이

내가 ViewBag 사용에 대한 생각 했어, -

ViewBag.MainDivCSS = "product-page"; 

을하지만,이 일이 기다리고 오타입니다.

더 좋은 방법이 있습니까?

답변

1

하위보기 페이지에서 마스터 페이지 클래스를 설정하지 않아도되는 것이 가장 좋습니다. 나를 위해 섹션을 중첩하는 것이 전부라면 div를 하나 더 추가하는 것이 좋습니다.

<div id="child" class="product-page"> 

rest of child view here 

</div> 

으로 전체 아이 뷰를 서라운드 당신이 원하는 경우에 당신이, 어쨌든

<div id="main"> 
    <div id="child" class="product-page"> 

    rest of child view here 

    </div> 
</div> 

를 얻을 수 있지만 것, 하나의 옵션은 JS를 통해 아이 뷰에 한 곳에서 그렇게하는 것입니다

<script> 
    $(function(){ 
      $('#mainc').addClass('product-page'); 
    }); 
</script> 

보기 모델에 의해 운반되고 컨트롤러에 의해 관리되는 특정 데이터를 강력하게보기를 좋아하지 않으므로이 경우 자바 스크립트 접근 방식을 선호합니다. 그리고 틀림없이, 당신 말이 맞습니다. ViewBag을 사용하면 안됩니다.