【问题标题】:Add non breaking space within razor helper method在剃刀辅助方法中添加非中断空间
【发布时间】:2023-03-29 07:29:01
【问题描述】:

如何在 Razor 辅助方法中包含不间断空格 ( )?这是有问题的助手:

@helper RenderClipResult(Clip clip, IList<string> searchTerms)
{
    <div class="result">
        <!-- other clip stuff -->
        @if (clip.ThirdPartyMaterials != null && clip.ThirdPartyMaterials.Count > 0)
        {
            <p>
                <span class="heading">Third Party Material</span><br/>
                @foreach (var material in clip.ThirdPartyMaterials)
                {
                    &nbsp; @AddElement("Description", material.Description, searchTerms) @AddElement("Cost", material.Cost, searchTerms)
                    <br />
                }
            </p>
        }
    </div>
}

AddElement 是另一个自定义助手。我正在寻找的输出是这样的:

Third Party Material
 first entry
 second entry
 third entry

我可以将AddElement 线包装在一个跨度标记中以进行样式设置,但它是另一个 html 标记和 css 规则,只是将某些文本缩进单个字符宽度。可能不得不这样做,因为 Razor 无法解析空间

【问题讨论】:

    标签: razor asp.net-mvc-4


    【解决方案1】:

    在您的不间断空格 html 代码之前添加 @:

    【讨论】:

    • 感谢 Pierre,这对我来说也很棒。有没有机会给我指出一些相关的文档?
    • @ChaithanyaM 在这篇文章中查看“混合代码和纯文本(替代)”:haacked.com/archive/2011/01/06/…
    • 我只是在找这个...+1 :)
    • 在我的情况下这对我不起作用,所以听起来很愚蠢,我这样做了:  - 这有效,但我使用了“@  "方法也是。
    【解决方案2】:

    第二种选择是使用构造:@Html.Raw(" ") 。这也可以是 nbsp 符号相乘的用户,因此您可以将字符串生成器的结果放入 RAW 函数。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-03
      • 1970-01-01
      • 1970-01-01
      • 2013-09-17
      • 1970-01-01
      • 1970-01-01
      • 2011-03-12
      • 2018-05-19
      相关资源
      最近更新 更多