2011-11-10 5 views
5

私は、ユーザーがデータを入力するためのテキストエリアを持つWebページを持っています。データベースの値がUTF-8エンコーディング( 'ä' =>%e4)であるのに対して、プラットフォームエンコーディング( 'ä' =>%e4)で値を取得すると、javascriptのtextareaの値を前の値と比較する際に、 $%c3%a4)。 Webページのエンコーディングは、XMLエンコーディング属性とメタ文字セットを使用するUTF-8です。ブラウザはUTF-8エンコーディングを使用しているとも言いますが、textbox.valueはプラットフォームエンコーディングです。テキストエリアの文字コード

UTF-8としてtextarea.valueを返すようにユーザーエージェントにどのように伝えることができますか?

+0

この質問には、説明が必要な場合があります。データベースを読み込むために使用するサーバー側の言語は何ですか?どのくらい正確にウェブページをエンコードしていますか?あなたは "メタコンテンツ="を使用していますか? – mmcglynn

+1

コメントをいただきありがとうございますが、これはもう1年ほど前のことですが、私はその間に別の方法で問題を解決しました。とにかく質問に答えるには:XHTMLページは、XMLエンコーディング属性+ を使用してUTF-8でエンコードされます。テキストフィールドにテキストを手動で入力しても、その値は常にプラットフォームでエンコードされていました。 –

+1

...それからあなた自身の質問に答える必要がありますので、「返答なし」と表示されなくなります。 – rhavin

答えて

0

以下はあなたのための解決策ですか?

function encode_utf8(s) 
{ 
    return unescape(encodeURIComponent(s)); 
} 

encode_utf8には、テキストボックスの値を指定しますか?これは、hereという別のSO回答からの示唆です。全く同じ問題ではありませんが、解決策が適用可能かもしれません。

関連する問題