MVC 4如何有条件地添加<div>元素</div>

时间:2012-12-24 22:07:32

标签: asp.net-mvc-4

想要有条件地添加HTML(div)元素。但是我的Create.cshtml中的代码不起作用,因为解析器混淆了缺少end-div(第一个结束“}”不再是代码了)

@if (setDiv)
{
    <div class="@item.DivClass" id="@item.DivId">
}
// More code more HTML
if (setDiv)
{
    </div>
}

任何人都知道如何解决这个问题?提前致谢! 杰拉德

2 个答案:

答案 0 :(得分:1)

您必须在@Html.Raw()中封装您的开始和结束div。否则razor将不允许这种语法,因为它不知道你在一个if语句中打开的div实际上是在另一个语句中关闭。

@if (setDiv)
{
    @Html.Raw("<div class='@item.DivClass' id='@item.DivId'>")
}
// More code more HTML
@if (setDiv)
{
    @Html.Raw("</div>")
}

答案 1 :(得分:-1)

试试这个:

@if (setDiv)
{
    <div class="@item.DivClass" id="@item.DivId">
}
// More code more HTML
@if (setDiv)
{
   @:</div>
}