Episerver自定义内容区域内的渲染块

时间:2016-06-21 11:22:05

标签: javascript jquery html asp.net-mvc episerver

我为jquery tab创建了内容区域。包含TAB名称和Tab内容的块。结构如下

<div id="tabs">
    <!-- Nav tabs -->
    <ul class="nav nav-tabs nav-justified" role="tablist">
        <li class="active" role="presentation">
            <a aria-controls="home" data-toggle="tab" href="#home" role="tab">INTRODUCTION</a>
        </li>
        <li role="presentation">
            <a aria-controls="profile" data-toggle="tab" href="#profile" role="tab">OUR HOLIDAYS TO ITALY</a>
        </li>
        <li role="presentation">
            <a aria-controls="messages" data-toggle="tab" href="#messages" role="tab">ABOUT ITALIAN EXPRESSION</a>
        </li>
        <li role="presentation">
            <a aria-controls="settings" data-toggle="tab" href="#settings" role="tab">ITALY HOLIDAY HIGHLIGHTS</a>
        </li>
    </ul>
    <!-- Tab panes -->
    <div class="tab-content tabgrey">
        <div class="tab-pane fade in active country_content" id="home" role="tabpanel">test</div>
        <div class="tab-pane fade country_content" id="profile" role="tabpanel">test</div>
        <div class="tab-pane fade country_content" id="messages" role="tabpanel">test</div>
        <div class="tab-pane fade country_content" id="settings" role="tabpanel">asdsadsad</div>
    </div>
</div>

如果我尝试通过块的视图渲染此结构。我无法模仿它。 因为我必须将所有li放在ul内,将所有div放在tab-content内。

1 个答案:

答案 0 :(得分:1)

我建议不要使用@ Html.PropertyFor()来渲染它,而不是使用该标记。因为你最终会得到很多显示模板和辅助方法。创建一个视图模型,而不是很好地将所有内容放在一起。然后循环浏览视图模型两次,一次是无序列表,然后是每个选项卡窗格。