变量 strCSSClass 通常有一个值,但有时为空。
我不想在此输入元素的 HTML 中包含一个空的 class=““,这意味着如果 strCSSClass 为空,我根本不需要 class= 属性。
以下是执行条件 HTML 属性的一种方法:
<input type="text" id="@strElementID" @(CSSClass.IsEmpty() ? "" : "class=" + strCSSClass) />
有没有更优雅的方式来做到这一点?特别是一个我可以遵循与元素其他部分中使用的语法相同的语法的地方:class=”@strCSSClass”?
原文由 tony722 发布,翻译遵循 CC BY-SA 4.0 许可协议
你没有从我那里听到,Razor 的 PM,但是在 Razor 2(Web Pages 2 和 MVC 4)中,我们将在 Razor 中内置条件属性(从 MVC 4 RC 测试成功),所以你可以写东西像这样:
如果
strCSSClass
为空,则类属性根本不会呈现。进一步阅读