JavaScript で、 シフトJISのまま URLエンコードする関数(または
簡単な方法)はないでしょうか?

最近の JavaScript の escape でエンコードすると、日本語コードを
勝手に Unicode に変換してしまいます。

やはり、Unicode と シフトJISの対応表を持った関数を作らないと
いけないのでしょうか? みなさんはどうしていますか?

このQ&Aに関連する最新のQ&A

A 回答 (1件)

以前同じ質問をしたのですが、方法がないのか回答はありませんでした。


私が調べた範囲では、標準の関数では不可能のようです。
また、UnicodeとシフトJISの変換はかなり複雑で、Java Scriptにやらせるのは一苦労だと思うのですが・・・。
私は諦めて、Perl(CGI)にやらせるようにしました。

この回答への補足

質問から、1年以上、経ちましたが、
たまたま、「とほほのWWW入門」というサイトで、
一応の方法を発見しました。
同様のことで、苦労している方はそちらを参考にしてください。

上記サイトから、以下のようにたどると、サンプルプログラムが見られると思います。

トップ > アラカルト > escape()でシフトJISエンコードする

補足日時:2003/05/02 17:11
    • good
    • 0
この回答へのお礼

回答、ありがとうございました。

実は、kazu-kun さんの質問は、チェックしていたのですが、回答者がいないのは単にタイミングの問題ではないかと思い、再度、質問させていただきました。ダメモトで。

やはり、いい方法はないのですかねぇ。
もしかしたら、名案を持っている人がいるかもしれないので、しばらく締め切らずに置きます。

やはり、CGI側での対処が賢いのですかね。
ほんとに、MSはいらんことしますね。

お礼日時:2002/01/10 16:20

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QKei(5MT)のシフトが渋い・クラッチが重い…トラブルの前兆ですか???

11年式 スズキ Kei ターボS 4WD 5MTに乗っています。
走行距離78000kmです。最近クラッチが重くなっているように感じます。
以前、代車で別の軽を借りたときに、その軽さに驚きました。
このときはフロントガラスリペアで出したんですが、店員さんも「クラッチ重いっすねぇ!!強化クラッチでも入ってますか??」
って言うくらいでした(6年間毎日乗り続けていたので、私自身はクラッチが特別重いとは感じなかった)。

これはトラブルの前兆でしょうか?
ちなみにシフト自体も、低速域で引っかかり感が強く感じます。
スズキスポーツからクイックシフトが出ていますが、これらに交換することで、改善は期待できるんでしょうか?

補足
次回車検はちょうど1年先です。

Aベストアンサー

クラッチディスクが減るとクラッチは重くなります。ディスクが新品の時はクラッチカバーのダイアフラムスプリングがおおよそディスク面に対して水平についています。ディスクが減ってくるとダイアフラムスプリングが起きて来て踏み込むのに重くなります。
更に内部は無給油なのですでに油切れの状態ですので踏み込むのに重くなっています。
そしてディスクのスプライン部などは雨が降って空気中の湿度が高くなれば錆びますので動きが悪くなりクラッチの切れも悪くなります。
クラッチが減ればクラッチの遊びも少なくなりますので遊びの量を見て判断することも出来ます。
クラッチの交換をした方が良いかを一度専門家に診て貰う事をお勧めします。

QシフトJISでURLエンコード

IEのJavaScriptのescapeで日本語をURLエンコードすると、UnicodeでURLエンコードしてしまいますが、シフトJISのままURLエンコードする方法はないのでしょうか?
文字列のシフトJISコードを取得する方法でも良いのですが・・・。

まったく、Unicodeなんて役に立たないものを無理矢理標準にしようとしないで欲しいナ!>MS

Aベストアンサー

こんばんは。

質問から5年以上が経過していますが、
私自身も大変気になっておりました。
今後、同じような悩みを持つ方がいらっしゃるかもしれませんので、
書き込ませていただきます。
やはりシフトJISのままエンコードする方法はないのかと
諦めかけていましたが、
あるライブラリを見つけました。

Escape Codec Library: ecl.js
というライブラリです。
私の方で試してみたところ、IE、FireFox、Netscape7のいずれでも
うまく動作しました。
参考URLご覧下さい。

参考URL:http://nurucom-archives.hp.infoseek.co.jp/digital/escape-codec-library.html

QSHIFT(シフト)

えーとですね、
>(英和)shift[ift] (三省堂「エクシード英和辞典」より)
━━v.変える[わる], 移す[る]; (ギアを)入れ替える ((up, down)); やりくりする[して暮す]; (責任を)転嫁する; ごまかす; 除く; 〔英話〕 素早く動く; 【言】(音を)推移させる.
・shift foroneself 自力でやりくりする.
・shift off (責任などを)押しつける ((on)).
━━n.変更, 変化, 交替; 移動, 移行; (時にpl.) 方策, やりくり(算段), ごまかし; ゆったりしたドレス; シュミーズ; 【球技】守備位置の移動; 交替の組; 交代制勤務(時間), (特定の勤務シフトの)勤務班[組]; 【言】音韻推移; 【コンピュータ】シフト ((桁送り)); シフト(キー).
・for a shift 間に合わせに.
・make (a) shift やりくりする ((with)).
・one'slast shift 最後の手段.
>まあ・・
 車の(人の心の)ギヤーをロー>セカンド>サード>・・>オーバードライブ
 >クルーズコントロールとかに切り替える時が来たのかもね?
 イエス>ブッダ>おやさま>〇〇って所でしょ?
 貴方はシフトアップしてCANからPARDONにそれから何処にシフトアップしますか?
 教えて下さい!、お願いします!!!
>YouTube - GUNDAM: Tilt-Shift

えーとですね、
>(英和)shift[ift] (三省堂「エクシード英和辞典」より)
━━v.変える[わる], 移す[る]; (ギアを)入れ替える ((up, down)); やりくりする[して暮す]; (責任を)転嫁する; ごまかす; 除く; 〔英話〕 素早く動く; 【言】(音を)推移させる.
・shift foroneself 自力でやりくりする.
・shift off (責任などを)押しつける ((on)).
━━n.変更, 変化, 交替; 移動, 移行; (時にpl.) 方策, やりくり(算段), ごまかし; ゆったりしたドレス; シュミーズ; 【球技】守備位置の移動; 交替の組; ...続きを読む

Aベストアンサー

他人への迷惑が、天理教の教える道ですか?

Q【javascriptのescape関数】

【javascriptのescape関数】

javascriptとescape関数の説明に
「escape関数を用いると文字列をISO-Latin-1コードに変換してくれます。」
とあります。

ひらがなの「あ」は「%82%A0」となるらしいのですが、
(ブラウザごとに結果が異なり、自分が試したときはユニコードの「%u3042」へ変換されました)
Latin1ってひらがなはあつかえないとおもってたのですがどういうことでしょうか。
ユニコードの「あ」の3042は符号化文字集合表に定義されているので理解できましたが、
latin1の表http://hp.vector.co.jp/authors/VA014833/HTML32/H …
に「あ」は含まれないので理解できませんでした。

どなたかご教示ください。

以上宜しくお願い致します。

Aベストアンサー

>Latin-1の範囲に含まれない文字を16進で表示する、とありますが、その変換ルールはどのように決まるのでしょうか??

文字コードを16進表示して%を前置したものです。

>Latin-1は符号化文字集合の1つなので、Latin-1で定義された文字を表すコードは、文字符号化方式に依存しないと認識していましたが

Latin-1はISO-8859-1という文字集合及びエンコード方式のことです。Unicodeは既存の文字集合を全部含んでいるので、当然その一部にLatin-1文字集合を含みます。

UnicodeはISO-8859-1をコードそのままu0000-u00ffに含んでいるので、ISO-8859-1エンコードと、UnicodeのISO-8859-1文字セット部分のコードは先頭のゼロを除けば一致しますが、これは世界中の文字集合からすると例外的です。JIS文字セットの日本語文字集合はUnicode文字集合に含まれますが、コードは全く異なります。

>ユニコードの「あ」は符号化文字方式がなんであれ、3042と認識しています。

これは正しいですが、シフトJISの「あ」は 82A0 だし、EUC-JPの「あ」は、A4A2 です。JIS区点コードなら4区2点。

>Latin-1の範囲に含まれない文字を16進で表示する、とありますが、その変換ルールはどのように決まるのでしょうか??

文字コードを16進表示して%を前置したものです。

>Latin-1は符号化文字集合の1つなので、Latin-1で定義された文字を表すコードは、文字符号化方式に依存しないと認識していましたが

Latin-1はISO-8859-1という文字集合及びエンコード方式のことです。Unicodeは既存の文字集合を全部含んでいるので、当然その一部にLatin-1文字集合を含みます。

UnicodeはISO-8859-1をコードそのままu0000...続きを読む

Qキーボードからシフトキーを押して入力する場合の文字がおかしい

あるときから突然、シフトキーを押して入力する文字がおかしくなりました。具体的には shift+8で(が入るはずですが、*となる、shift+2で”のはずが@となってしまうなどです。
shift+1は!、shift+3は#など正しく入力できるキーもあります。
原因がまったく分からずしかも入力系のことなので困っております。
どなたかご教授を!
使用マシン:VersaPro VA90J
OS:Windows98mMe

Aベストアンサー

私が使っている英語101(104)のキーボードは、そのとおり入力されます。

コントロールパネル・システム・キーボード・101キーボード・ドライバ・ドライバの更新・次へ・すべてのハードウエアを表示・日本語106キーボード(ctrl+英数)

の手順で、正常に直ると思われます。

Q文字コードを相互変換するには?(JIS,SJIS,EUC,UTF-8,UTF-16,Unicode)

現在、文字コード一覧を JavaScript を使って動的にリストを作成する事を行っています。

そこで質問します。
『JavaScript』では文字コードの相互変換する方法はありますか?
ある場合は関数、メソッドとその使い方を簡単でいいので教えて下さい。
もし標準では出来ない場合は、どのようにすれば相互変換できるのかその方法を教えて下さい。

●相互変換コード
シフトJISコード←→JISコード
シフトJISコード←→EUCコード
シフトJISコード←→UTF-8
シフトJISコード←→UTF-16
シフトJISコード←→Unicode
最終的に上記の相互変換を考えています。
変換を繰り返すことで実現できると思っています。
以上。相互変換の方法をお願いします。→JavaScript 歴1.5ヵ月です。

Aベストアンサー

javascriptでやったことはないですが、いくつか公開されていたような気がします。

一個参考URLをつけておきますが、

「文字コード 変換 javascript」

で検索すれば他にもあるような気がします。

参考URL:http://nurucom-archives.hp.infoseek.co.jp/digital/escape-codec-library.html

Qシフトキー(右)が誤動作してしまいます。

左側のShiftキーは正常に動作するのですが、
右側のShiftキーが誤動作してしまいます。

NumLKはOn・Offに関らず、
「Shift(左) + i 」だと「I」と表示されにも関らず、
「Shift(右) + i 」を押下すると タブキーを押下した時と同じ動作をしてしまいます。

ドライバを更新したり、コントロールパネルのユーザ補助を
確認しましたが、当該動作を行うことがわかりませんでした。

アドバイスよろしくお願いします。m(_ _)m

Aベストアンサー

デスクトップということなら、キーボードを交換という手もありですね。

しかし、問題が解決するかどうかは、わかりません。

キーボードを買うのが先か、不具合の原因を特定するかどちらを優先させましょう。
キーボードを買って、同じ不具合が出たら、要らぬ買い物。
さりとて、原因が特定できて、キーボードの故障だったら、要らぬ手間

私なら、こうしますということで、
SP3を適用して出た不具合なら、削除して様子を見ます。
そうでない場合は、キーボード買ってきますね。

それでだめなら、リカバリしちゃいます。

順番にやっていけば、必ず解決するものと思われます。

Q【javascript】URLからkeycode入力するjavascript付与する方法を教えてくだ

【javascript】URLからkeycode入力するjavascript付与する方法を教えてください。

Aベストアンサー

(1)URLからkeycode入力する
(2)javascript付与する

それぞれについて意味不明なのでもうすこし具体的になさったほうがよいかと

QExcel2003 シフトキーによる移動に関する注意点

以下のメモはExcel 2003 の教本からポイントをメモしたものです。問題は、この意味を忘れてしまったことです。解説してくださいませんか?
メモ:
shift key でも移動できる⇒shift key での移動は切り取っての移動。shift なしのドラッグによる移動は、クリアしての移動。大違い!

Aベストアンサー

>解説してくださいませんか?
(1)shiftキー&ドラッグ⇒対象セル範囲を切り取ってドラッグ先に挿入(ドラッグ先セル内容は保証)
(2)shiftなしドラッグ⇒対象セル範囲を切り取ってドラッグ先に上書き(ドラッグ先セル内容は保証されない)
(参考)shift+ctrl+ドラッグ⇒対象セル範囲をコピーしてドラッグ先挿入(ドラッグ先セルは保証、ドラッグ元セルも保証)

Qサイトをshift-jisからutf-8に変更時のjsフィルのエンコードについて

いつもお世話になっています。回答者様の暖かく賢いアドバイスによってホームページを無事shift-jisからutf-8に変更することができました。
現状、opera、ie6、ie7で確認した上では動作上は全く問題ないようなのですが、一点気になることがあって質問させていただきます。

htmlソースをutf-8にするにあたってcss、cgi、jsファイルも同様のutf-8に変更するべきだと思い作業をしていましたが、添付の2ファイルについてだけ、いくら試しても保存後にshift-jisに戻ってしまいます。変更はdreamweaver、hidemaruエディタで試しました。
添付ファイル
http://www.ucatv.ne.jp/~h_p_s/sample/rollover.js
http://www.ucatv.ne.jp/~h_p_s/sample/swfobject.js

1)現状動作はできていますが、このまま2ファイルだけshift-jisのままでも問題ないのでしょうか?SEOの点からもご意見をお聞かせいただければありがたいです。

2)変更すべきである場合、変更の仕方はどのようにしたらいいのでしょうか?

以上よろしくお願いします。

補足として、これが意味があるのか分かりませんがhtmlソース内
<script type="text/javascript" src="swfobject.js"></script>
等は
<script type="text/javascript" src="swfobject.js" charset="UTF-8"></script>
のように書き換えています。ブラウザ上では記入前後で何も変わりがありませんでしたが。

いつもお世話になっています。回答者様の暖かく賢いアドバイスによってホームページを無事shift-jisからutf-8に変更することができました。
現状、opera、ie6、ie7で確認した上では動作上は全く問題ないようなのですが、一点気になることがあって質問させていただきます。

htmlソースをutf-8にするにあたってcss、cgi、jsファイルも同様のutf-8に変更するべきだと思い作業をしていましたが、添付の2ファイルについてだけ、いくら試しても保存後にshift-jisに戻ってしまいます。変更はdreamweaver、hidemaruエ...続きを読む

Aベストアンサー

マルチバイト文字をつかっていないなら文字コードはかわりません。
UTF-8はBOMをつければ明示的になりますが、それもあまりおすすめ
できません。

つまり
>shift-jisのままでも問題ないのでしょうか?

この認識があやまりで、shift-jisですらないただのシングルバイト
だけでできたテキストファイルだということです。

結論としては、いまのままで問題ありません


人気Q&Aランキング

おすすめ情報