【问题标题】:Razor View Engine,issue with ternary operatorRazor View Engine,三元运算符的问题
【发布时间】:2011-11-28 14:21:25
【问题描述】:

我是 Razor 视图引擎的新手,我正在尝试这样的事情

<span class="@(Model.ID == null ? "promptTabActive" : "myclass")"></span>

但是一旦渲染它就会显示为

 <span class=""></span>

我改成

<span class="@(Model.ID == null ? "promptTabActive11" : "myclass")"></span>

它开始看起来像

<span class="promptTabActive11"></span>

穿了..我对此感到沮丧..剃刀视图引擎中的“promptTabActive”一词有什么问题?它是一个关键词吗..“promptTabActive”这个词中的其他任何内容都正常出现,但只有这个。

需要帮助..

【问题讨论】:

  • 您需要发布更多代码,格式正确。此外,您说“但是一旦渲染它就会显示为...”的部分,您没有任何东西可供我们查看。
  • 无法复制;根据需要,我得到&lt;span&gt;class="promptTabActive"&lt;/span&gt;。您确定在粘贴 html 时没有类似 R# 的东西“更正”它吗?
  • @HenkHolterman - 公平地说,OP 询问为什么在第一个示例中没有显示 promptTabActive。
  • 您是说希望文本出现在 span 标签内吗? &lt;span&gt;class="promptTabActive"&lt;/span&gt;
  • @LukeDuddridge - 不,我认为他们在问为什么第一个示例在类属性中不包含文本 promptTabActive,以及为什么只在类名的末尾添加 11 来“修复”它。

标签: c# asp.net-mvc-3 razor


【解决方案1】:

您展示的代码不可能产生您展示的结果。您在代码中的span 标记之外有class 属性,但不知何故它最终在结果中的span 标记内?

代码应如下所示:

<span class="@(Model.ID == null ? "promptTabActive" : "myclass")"></span>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-10-24
    • 1970-01-01
    • 1970-01-01
    • 2011-06-17
    • 2016-08-09
    • 2015-05-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多