在使用 asp.net razor 标记的文本区域内添加新行
Adding new line within a textarea that's using asp.net razor markup
如何在 Razor @foreach
语句内的文本区域中的每个项目后添加换行符?
下面的代码将所有内容显示在一行中,例如...
12341524345634567654354487546765
当我想要...
12341524
34563456
76543544
87546765
<textarea>
@foreach (var item in ViewData.Model)
{
@item["ACCT_ID"]
}
</textarea>
您可以使用 HTML 助手 @Html.Raw()
添加原始 HTML。在你的情况下,这样的事情应该有效:
<textarea>
@foreach (var item in ViewData.Model)
{
@item["ACCT_ID"]
@Html.Raw("\n")
}
</textarea>
这将在每个项目后插入一个原始换行符 (\n
)。
在您的控制器中:
只需转义字符串中的换行符\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>
}
如何在 Razor @foreach
语句内的文本区域中的每个项目后添加换行符?
下面的代码将所有内容显示在一行中,例如...
12341524345634567654354487546765
当我想要...
12341524
34563456
76543544
87546765
<textarea>
@foreach (var item in ViewData.Model)
{
@item["ACCT_ID"]
}
</textarea>
您可以使用 HTML 助手 @Html.Raw()
添加原始 HTML。在你的情况下,这样的事情应该有效:
<textarea>
@foreach (var item in ViewData.Model)
{
@item["ACCT_ID"]
@Html.Raw("\n")
}
</textarea>
这将在每个项目后插入一个原始换行符 (\n
)。
在您的控制器中:
只需转义字符串中的换行符\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>
}