我有一个“主”视图(_MasterLayout.cshtml)
这有一个Div,ID为“main”
<div id="main" class="xxx">
</div>
在从_MasterLayout.cshtml继承的视图中,我需要能够在此div中设置类的值(例如,将其设置为“product-page”)
我怎样才能做到这一点?
我考虑过使用ViewBag,它可以运行 -
ViewBag.MainDivCSS = "product-page";
然而,这是一个等待发生的拼写错误。
有没有更好的方法呢?
答案 0 :(得分: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>
我不喜欢强烈查看由视图模型承载并由控制器管理的特定数据,因此在这种情况下我更喜欢javascript方法。当然,你是对的,你不应该使用ViewBag
。