Razor-Pages - HTML 标记

Razor-Pages - HTML markup

根据这个 post 的答案,我使用的是 @:<div class="col-md-6">

问题

我的问题是: @: 标记是否可行?如果是这样,我做错了什么。如果不是,替代方案是什么(这并不意味着将我的整个代码放入 if/else

PS: 我知道我不应该 post 代码图片,但我想显示格式和语法错误。

有更简洁的方法来管理 Razor 代码中的条件。很难提供完整的示例,因为您没有提供完整的代码,但是您可以这样做,例如:

<div class="col-md-@(i+1 == Model.CellsNotStarted.Count && i % 2 ! = 0 ? "12" : "6")">

每当您想要在 Razor 中使用余数运算符 (%) 时,您还应该考虑 GroupBy 是否更好。最常见的是,正如我在这个问题中看到的那样:Building tables with WebMatrix

你可以试试用js设置html.Here是个demo:

<div id="myDiv"></div>
<script>
        $(function () {
            var html = "";
            if ("@(Model.CellsNotStarted != null)"=="True")
            {
                for (var i = 0; i <@Model.CellsNotStarted.Count; i++)
                {
                    if (i == (@Model.CellsNotStarted.Count - 1) && i % 2 != 0)
                    {
                        html += '<div class="col-md-12">';
                    }
                    else
                    {
                        html += '<div class="col-md-6">';
                    }
                    html += i+'</div>';

                }
            }
            $("#myDiv").html(html);


        })
</script>

结果: