razor core中的多行文本显示
我使用textarea html标记进行了多行输入,例如:razor core中的多行文本显示,razor,asp.net-core,asp.net-core-mvc,Razor,Asp.net Core,Asp.net Core Mvc,我使用textarea html标记进行了多行输入,例如: line 1 line 2 with <tags> and @ and <b> bold </b> line 3 它可以很好地处理特殊字符,但不能处理换行符 如果我使用: @Html.Raw(Model.MultilineText2.Replace(Environment.NewLine, "<br/>")) 它处理换行符,但不处理特殊字符 我只希望结果与用户输入的结果
line 1
line 2 with <tags> and @ and <b> bold </b>
line 3
它可以很好地处理特殊字符,但不能处理换行符
如果我使用:
@Html.Raw(Model.MultilineText2.Replace(Environment.NewLine, "<br/>"))
它处理换行符,但不处理特殊字符
我只希望结果与用户输入的结果一模一样,就像您在上面的示例中看到的那样,只要使用@Html.textareform=>m.fieldName如果我理解正确,您需要的是对除换行符之外的所有其他内容进行编码。但你不必在意。因为有一种标准方法: 上线前 空格序列被折叠。换行符处断行、换行符处断行,并根据需要填充行框 因此,只需添加一个空白:pre-line即可:
<span style="white-space: pre-line">@Html.DisplayFor(m => m.MultilineText2)</span>
生成的html将是:
第1行
第2行带有标签和&;64; 和b粗体/b
第3行感谢回复,我已经测试过了,但这不是期望的结果。我已经从textarea标记中获得了输入,现在我只想在另一个页面上将其显示为不可编辑的文本。
<span style="white-space: pre-line">@Html.DisplayFor(m => m.MultilineText2)</span>