我正在尝试通过ModelState词典传递错误消息,以将其馈送到生成该错误警报的javascript代码。一切正常,但是我无法使特殊字符正确显示为“”和“è”。解决方案?
AspNet核心代码:
ModelState.AddModelError("Utente", "L'utente per cui si tenta di reimpostare la password non è ancora registrato");
代码JS:
<script type="text/javascript">
@if (!ViewData.ModelState.IsValid && ViewData.ModelState.ContainsKey("Utente"))
{
@if( ViewData.ModelState["Utente"].Errors.Count > 0)
{
<text>
$(document).ready(function() {
alert('@ViewData.ModelState["Utente"].Errors.First().ErrorMessage');
});
</text>
}
}
答案 0 :(得分:2)
您可以使用@Html.Raw()
来防止编码:
alert("@Html.Raw(ViewData.ModelState["Utente"].Errors.First().ErrorMessage)");
答案 1 :(得分:0)
您可以在消息变量中使用双引号而不是单引号
$(document).ready(function() {
var message = "@Html.Raw(ViewData.ModelState["Utente"].Errors.First().ErrorMessage)";
alert(message);
});