Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Razor-如何在变量中存储html特殊字符_Html_Asp.net Mvc_Razor - Fatal编程技术网

Razor-如何在变量中存储html特殊字符

Razor-如何在变量中存储html特殊字符,html,asp.net-mvc,razor,Html,Asp.net Mvc,Razor,在我的html页面上,我想从模型中的条目集合中创建一个列表。但是,其中一些条目可能为空,在这种情况下,我希望有一个空列表项,如下所示: 某物 别的 更多的东西 我通过插入一个不间断的空格字符来实现。(常规空格不会生成空列表项)下面是一段代码片段: <ul> @{ foreach (var x in Model.Entries) { var rayon = x.Rayon ?? "&nbsp;";

在我的html页面上,我想从模型中的条目集合中创建一个列表。但是,其中一些条目可能为空,在这种情况下,我希望有一个空列表项,如下所示:

  • 某物
  • 别的
  • 更多的东西
我通过插入一个不间断的空格字符来实现。(常规空格不会生成空列表项)下面是一段代码片段:

<ul>
    @{ 
        foreach (var x in Model.Entries)
        {
            var rayon = x.Rayon ?? "&nbsp;";
            <li>@rayon</li>
        } 
    }
</ul>
    @{ foreach(Model.Entries中的var x) { var人造丝=x.人造丝??”;
  • @人造丝
  • } }
遗憾的是,这不起作用,因为它会逐字粘贴
。 删除引号和/或在开头添加@:将无法编译

我能做什么?

代替
只需给出一个空白字符串:

var rayon = x.Rayon ?? string.Empty;
事实上,我认为你甚至可以把变量赋值一起废弃,直接使用x.Rayon原样——空值应该有同样的效果

<ul>
    @{ 
        foreach (var x in Model.Entries)
        {     
            <li>x.Rayon</li>
        } 
    }
</ul>
所以,看看你的CSS

如果不想更改现有样式,可以向CSS中添加一个额外的类,并将其应用于此实例。 即 CSS:

HTML:

    ...
代替
只需给出一个空白字符串:

var rayon = x.Rayon ?? string.Empty;
事实上,我认为你甚至可以把变量赋值一起废弃,直接使用x.Rayon原样——空值应该有同样的效果

<ul>
    @{ 
        foreach (var x in Model.Entries)
        {     
            <li>x.Rayon</li>
        } 
    }
</ul>
所以,看看你的CSS

如果不想更改现有样式,可以向CSS中添加一个额外的类,并将其应用于此实例。 即 CSS:

HTML:

    ...

您可以使用
Html.Raw

像这样使用

<li> @(Html.Raw(rayon)) </li>
  • @(Html.Raw(人造丝))

  • 您可以使用
    Html.Raw

    像这样使用

    <li> @(Html.Raw(rayon)) </li>
    
  • @(Html.Raw(人造丝))

  • 遗憾的是,正如我所料,string.Empty不会生成空列表项。没有任何内容或只有空白的列表项将不会显示在html页面上。这就是为什么我需要一个不可见的字符,而不仅仅是空白,比如一个不间断的空格。然而,我不想修改它,因为这个元素已经附加了大量的CSS,我不认为我完全理解它,所以其他的解决方案可以很好地工作;但感谢您的帮助:)遗憾的是,正如我所料,string.Empty不会生成空列表项。没有任何内容或只有空白的列表项将不会显示在html页面上。这就是为什么我需要一个不可见的字符,而不仅仅是空白,比如一个不间断的空格。然而,我不想修改它,因为这个元素已经附加了大量的CSS,我不认为我完全理解它,所以其他的解决方案可以很好地工作;但是谢谢你的帮助:)这会产生一个空字符串好吧,但我不需要空字符串。我特别需要字符串中的一个不可见字符,例如
    ,否则列表项将不会显示。您需要小心使用Html.Raw-这会打开潜在的XSS漏洞。i、 e.如果值为:“警报('hello')”…它正在生成
    ,该怎么办。您可以在控制台中查看。啊,您是对的。我仍然在尝试另一种解决方案,不小心。谢谢@我知道,这很危险,但在这里,它是安全的。因为它不是用户输入的值。所以使用它是安全的。这样可以生成一个空字符串,但我不需要空字符串。我特别需要字符串中的一个不可见字符,例如
    ,否则列表项将不会显示。您需要小心使用Html.Raw-这会打开潜在的XSS漏洞。i、 e.如果值为:“警报('hello')”…它正在生成
    ,该怎么办。您可以在控制台中查看。啊,您是对的。我仍然在尝试另一种解决方案,不小心。谢谢@我知道,这很危险,但在这里,它是安全的。因为它不是用户输入的值。所以使用起来是安全的。