在使用 Razor 标记的文本区域中添加新行 asp.net



如何在 Razor @foreach语句内的文本区域中的每个项目后添加换行符?

下面的代码在一行上显示所有内容,例如...

12341524345634567654354487546765

当我想...

12341524

34563456

76543544

87546765

<textarea>
    @foreach (var item in ViewData.Model)
    {
                @item["ACCT_ID"]
    }
</textarea>
您可以使用 HTML

帮助程序添加原始 HTML @Html.Raw() 。 在您的情况下,这样的事情应该有效:

<textarea>
    @foreach (var item in ViewData.Model)
    {
        @item["ACCT_ID"]
        @Html.Raw("n")
    }
</textarea>

这将在每个项目后插入一个原始换行符 ( n )。

在控制器中:

只需对字符串中的换行符 进行转义即可。

message = "Violation of UNIQUE KEY constraint" + "\n";
message += "Customer " + Customer.ToString() + "\n";
message += "Invoice " + Invoice.ToString();
Viewbag.AlertMessage = message;

在您看来:

@if (ViewBag.Alertmessage != null)
{
    <script type="text/javascript">
           alert("@ViewBag.Alertmessage");
        ViewBag.AlertMessage = "";
    </script>
}

最新更新