2

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

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

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

4

2 回答 2

3

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

@if (setDiv)
{
    @Html.Raw("<div class='@item.DivClass' id='@item.DivId'>")
}
// More code more HTML
@if (setDiv)
{
    @Html.Raw("</div>")
}
于 2012-12-24T22:58:36.090 回答
0

尝试这个:

@if (setDiv)
{
    <div class="@item.DivClass" id="@item.DivId">
}
// More code more HTML
@if (setDiv)
{
   @:</div>
}
于 2012-12-24T22:16:13.373 回答