2009-06-03 11 views
5

私のASP.NETアプリケーションの一部のユーザーは、次のテキストフォーム提出でユニコード文字を理解するにはどうすればよいですか?

帝bénéficieD'UNコーチング

を入力し、私は私のRequest.Formに次の値を取得する:

Jeb n ficied unコーチ

最初は私のページのエンコードがLatin1に設定されていました。

<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> 

しかし、変更後、私はまだのRequest.Formでそれらの「ブロック」を得る:私は、次のメタタグを使用してユニコード(UTF8)にそれを変更することに役立つだろうと思いました。

これは奇妙なことですが、これはIISがサービスしているページを送信すると発生します(例:http://localhost/myform.aspx)。 同じhtmlを取得した場合は、ローカルに保存して、ブラウザでファイルを直接開き(例:c:\ myform.html)、提出してください。すべて正常です。私のRequest.FormのUnicode文字は、 。

ヒント?私はここで失われています...

答えて

-1

"charset = ISO-8859-1"を試すことができます。私はその助けを願っています。

2

あなたが言及したメタタグは、ページのコンテンツがUTF-8コードページに従ってレンダリングされることを保証しますが、データの送信方法を通知しません。 そのために、あなたはあなたのformタグでこの属性を追加してはならない:

<form accept-charset="utf-8" ....> 

ない考えをあなたはIISとファイルシステムを通してそれを実行したときの挙動が異なる理由を、しかし。

関連する問題