我有一个问题,给我很多问题。我需要从cshtml设置使用C#代码将一些变量设置为javascript。问题是,控制和西班牙语“ñ”在窗口中显示为unicode字符串。
我正在尝试这段代码:
@:var nombrePersona = '@System.Text.Encoding.Unicode.GetString(System.Text.Encoding.Unicode.GetBytes(participante.Nombre))'
@:var apellidoPersona = '@System.Text.Encoding.Unicode.GetString(System.Text.Encoding.Unicode.GetBytes(participante.Apellidos))'
javascript中的结果如下:
“Jes”&'#250; s“,它应该是”Jesús“
如何解决这个问题?
谢谢
答案 0 :(得分:1)
试试这个:
var nombrePersona = '@Html.Raw(HttpUtility.HtmlDecode(participante.Nombre))'
var apellidoPersona = '@Html.Raw(HttpUtility.HtmlDecode(participante.Apellido))'
修改强>
另外。如果您使用格式错误的字符串填充HtmlDecode()
,则无效。尝试先清理它:
"Jes'&'#250;s".Replace("'", "") // "Jesús"
答案 1 :(得分:1)
你可以试试这个:
var nombrePersona = '@Html.Raw(HttpUtility.JavaScriptStringEncode(participante.Nombre))'
var apellidoPersona = '@Html.Raw(HttpUtility.JavaScriptStringEncode(participante.Apellido))'
Saludos。