IEのform要素はacceptCharset属性(accept-charset)に非対応らしい

<p><a href="http://www.akiyan.com/blog/archives/2005/11/checkpad_bookma.html">蓄々check*pad Bookmarkletを公開したお知らせ</a>のコメント欄でeuc-jpだと文字化けするバグ報告を頂きました。原因を調べてみると、IEがform要素のacceptCharset属性に非対応なために起こっている問題でした。Firefoxは大丈夫なようです。</p>

蓄々check*pad Bookmarkletを公開したお知らせのコメント欄でeuc-jpだと文字化けするバグ報告を頂きました。原因を調べてみると、IEがform要素のacceptCharset属性に非対応なために起こっている問題でした。Firefoxは大丈夫なようです。

check*pad側へ送るマルチバイト文字列はeuc-jpで送る必要があり、acceptCharset属性にeuc-jpを設定して処理していたのですが、IEではページの文字エンコードそのままで送られてしまうためshift-jisやutf-8のページでブックマークレットを使うと文字化けしてしまうようです。IEのおばかさんめ。

現在、文字化けを回避する方法を模索中です。ひとつの策としては、いったんwww.akiyan.comに送信し、euc-jpのページを間にかましてcheck*pad側へ再送信する方法があります。ピュアなbookmarkletでなくなってしまうのが嫌なところです。

acceptCharset関係で情報をお持ちの方がいましたらお助け頂ければ幸いです。

1 Comment

  1. あきやん
    解決しました。のちほど解決方法のエントリを公開します。