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

蓄々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 件

  1. あきやん より:

    解決しました。のちほど解決方法のエントリを公開します。