我正在使用 asp.net core 2.0 开发我的 MVC 应用程序。但是,我在 View 中使用了 SharedLocalizer。我使用以下代码注入(inject)它:
@using Microsoft.AspNetCore.Mvc.Localization
@using Microsoft.Extensions.Localization
@inject IViewLocalizer Localizer
@inject IStringLocalizer<SharedResources> SharedLocalizer
@inject IHtmlLocalizer<SharedResources> SharedHtmlLocalizer
我是这样称呼我的 SharedLocalizer 的:
function updateCommission(agentID) {
var msg = '@SharedLocalizer["Confirm Update Commission?"].Value.ToString()';
if (confirm(msg) == false)
return false;
}
如果我在我的 html 标签/输入中使用 SharedLocalizer,它显示正常。当我查看我的页面源代码时,该字符串也是 '$#1231';
如何使用我的设置显示正确的字符串?
最佳答案
返回非 HTML 编码的标记 @Html.Raw
重构
function updateCommission(agentID) {
var msg = '@Html.Raw(SharedLocalizer["Confirm Update commission?"].Value.ToString())';
return confirm(msg);
}
关于javascript - 在 ASP.Net Core 中使用 SharedLocalizer 和 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52734918/