2016-12-28 6 views
0

私には多くの問題があります。私はcshtmlからC#コードを使用してjavascriptにいくつかの変数を設定する必要があります。問題は、accutesとスペイン語の「ñ」がウィンドウ内にユニコード文字列のように表示されることです。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での結果は同様である:

"ジェス&「#250; s" は、それが "ヘスス"

する必要があります

これを修正する方法はありますか?

var nombrePersona = '@Html.Raw(HttpUtility.HtmlDecode(participante.Nombre))' 
var apellidoPersona = '@Html.Raw(HttpUtility.HtmlDecode(participante.Apellido))' 

EDITまた

答えて

1

はこれを試してみてください、ありがとうございました。フォーマットが不適切な文字列でHtmlDecode()と入力すると、正しく動作しません。最初にそれをクリーニングしてみてください:

"Jes'&'#250;s".Replace("'", "") // "Jesús" 
+1

ルイス、ありがとう、完璧に動作します。 – Mikel

1

あなたはこれを試すことができます。

var nombrePersona = '@Html.Raw(HttpUtility.JavaScriptStringEncode(participante.Nombre))' 
var apellidoPersona = '@Html.Raw(HttpUtility.JavaScriptStringEncode(participante.Apellido))' 

Saludosを。

+0

これもうまくいった!!おかげでNicoRiff – Mikel