我正在嘗試通過 toastr 顯示多個錯誤訊息,用于用戶注冊頁面。
我通過 TempData["errors"] 將錯誤訊息串列傳遞給 View
但我不知道如何顯示字串串列(用于錯誤)
我這樣做是為了一條成功的訊息,代碼如下
注冊.cshtml
@if (TempData["success"] != null)
{
<script>
$(document).ready(function() {
var message = '@(TempData["success"])';
toastr.options = {
"rtl": true,
"closeButton": false,
"newestOnTop": false,
"progressBar": false,
"positionClass": "toast-top-left",
"preventDuplicates": true,
"onclick": null,
"showDuration": "300",
"hideDuration": "1000",
"timeOut": "5000",
"extendedTimeOut": "1000",
"showEasing": "swing",
"hideEasing": "linear",
"showMethod": "fadeIn",
"hideMethod": "fadeOut"
};
toastr.success(message);
});
uj5u.com熱心網友回復:
Toastr 支持帶有 HTML 標簽的訊息。因此,您可以<br/>為換行添加標簽。
試試這個。
TempData["Errors"] = string.Join("<br/>", Errors);
哪里Errors有收藏。
這是螢屏截圖

uj5u.com熱心網友回復:
我的建議是:
您可以在控制器中將串列轉換為字串,如下所示:
var err = new List<string>() { "error1", "error2", "error3" };
var er = string.Join(",", err.ToArray());
TempData["errors"] = er;
然后在您的javascript代碼中替換“,”, <br/> 如下所示:
var message1 = '@TempData["errors"]';
var message2 = message1.replaceAll(',', '<br/>');
toastr.error(message2, 'Errors');
結果:

但是如果您將串列轉換為字串,如下所示:
控制器:
var err = new List<string>() { "error1", "error2", "error3" };
var er1 = string.Join("<br/>", err.ToArray());
TempData["error?"] = er1;
JS:
var message3 = '@TempData["error?"]';
toastr.error(message3, 'Errors');
結果:

如果您想發送個別錯誤訊息:控制器:
var err = new List<string>() { "error1", "error2", "error3" };
TempData["error!"] = err;
JS:
var message4 = @Html.Raw(Json.Serialize(TempData["error!"]));
message4.forEach(x => toastr.error(x));
結果:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/410249.html
標籤:
上一篇:如何使用.NET6最小API將檔案路徑作為wwwroot目錄下的URL回傳?
下一篇:系結洗掉小數分隔符
