• ベストアンサー

英数のみ半角にしたい

お世話になっております。 現在JavaScriptとPHPを使用しております。 そこでテキストエリアに入力された英数部分のみをリアルタイムで半角にしたのですが、それは可能なのでしょうか? S と入力されたら S と表示したいです。 1 と入力された場合は 1 と表示させたいです。 あいうえお などの入力はそのままの表示で。 こういった表示の仕方をしたいのですが、 検討が着かないので、なにとぞご教授願います。

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.1

>リアルタイムで どの程度のことか不明ですが、テキストエリアからフォーカスが離れた 時とかが一般的ではないでしょうか。 <TEXTAREA ONBLUR="toHalf(this)"> 変換関数は以下の通り function toHalf(area) {   var txt = area.value; //テキストエリアの内容を変数に受け取る   txt = conv(txt,0xFF10,0xFF19); //全角数字の変換   txt = conv(txt,0xFF21,0xFF3A); //全角英大文字の変換   txt = conv(txt,0xFF41,0xFF5A); //全角英小文字の変換   area.value = txt; //変換した内容をテキストエリアに戻す } function conv(txt,min,max) { //元の文字列,最小値,最大値   for ( ; min <= max ; min++ ) {     var zen = String.fromCharCode(min); //全角文字     var han = String.fromCharCode(min - 0xFEE0); //半角文字     txt = txt.replace(zen,han); //全角を半角で置換   }   return txt; //変換結果を返す } 急いだので、一例です。もっと上手い手があるかも知れません。

978
質問者

お礼

さっそくの返答ありがとうございます。 教えていただいたコードを参考に数行足して書いたところ理想の結果が返ってきました。 本当にありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

文字コードの確定ができないと、結構処理が煩雑になりそうですね。 処理としてはonkeyupやonkeydownをつかうとすんなりいけるかと。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 半角英数

    google文字入力とappleキーボードをwin7で使用しています。 半角英数にすると、Aのマークの横に小さな横棒がでて、入力時にアンダーバーが表示されてしまいます。 普通のシンプルな半角英数にする方法をご存知でしたら教えて下さい。

  • 半角英数が入力できなくなってしまいました。半角カナしか打てません

    Windos2000の環境です。 何故か半角英数での入力が半角カナになってします。 ログイン画面でユーザ名を入力しようとすると半角英数が打てずに困っています。 とりあえず設定をチェックしてみると 入力モードは"直接入力"になってします。 変換モードは"一般(I)"になっています。 入力設定はかな入力になっています。特に変わった所は見当たらないのですが何故か半角カナになってしまいます。 その際、右下は「_A」と表示されています。 [半角/全角]キーを押すと「あ」となって問題なくひらがな入力はできます。 どうすれば半角英数を入力出来るようになるのでしょうか?

  • 半角英数と直接入力

    初歩的な質問ですみません。 IMEツールバー2000で半角英数と直接入力がありますが、同じ表示で画面に出てくるのでしょうか? 全角と半角の入力の違いは文字の幅だと思うのですが、半角と直接入力の違いはあるのでしょうか。 教えて下さい。

  • Caps Lock英数を押すと、半角英数になる

    同様な質問がありますが、どうしてもXPのように使いたいので教えて下さい。 かな入力で使っています。 XPのパソコンは、ひらがな表示の時に「Caps Lock英数」キーを押すと「全角英数」になっていました。 「半角英数」にしたい時は、、ひらがな表示の時「半角/全角漢字」キーで半角英数にしていました。 いろいろな解決法が書かれていますが、今迄の様に、「Caps Lock英数」キーのみで「ひらがな」から「全角英数」にするにはどうすればいいのでしょうか。 他に持っているXPのパソコンと違うので、非常に使いづらく困っています。 よろしくお願いします。

  • 勝手に半角英数に・・・

    検索サイトで直接入力やひらがなで文字入力してクリックすると自動的に言語バーの表示が半角英数になってしまいます。しかし、また検索しようと文字を入力するところをクリックすると自動的に直接入力やひらがなに戻っています。要するに直接入力にしていても文字が入力できないところをクリックすると半角英数になり、そのあと文字を入力するところをクリックすると直接入力になるのです。 わかりにくい説明かもしれませんが、どなたか原因がわかる方はいないでしょうか?

  • JSで全角英数記号を半角英数記号に。

    JavaScriptで、全角英数記号が含まれていたら、半角英数記号に したいと思っています。 たとえば、123456→123456といった具合です。 ネットを参考にしたのですが str.replace(/[A-Za-z0-9]/g, function(s) { return String.fromCharCode(s.charCodeAt(0) - 65248); }); このロジックが近いのですが、英数字までです。 記号1つ1つ指定してreplaceではかなり手間ですよね…。 効率よく記号も半角英数にするにはどうすればよいでしょうか?

  • フォーカスを取得すると、自動的に半角英数にする方法

    いつもお世話になっております。 フォーム上にテキストボックスを配置し、 そこにフォーカスがきたときに自動的に 半角英数入力にする方法はあるのでしょうか? お分かりの方がおられましたら、よろしく お願いいたします。

  • 半角英数について

    PCでの質問です。常にかな文字入力で文字をうっています。 サイト検索の時はちゃんと下のツールはかな文字(あ)表示になりかな文字が打てるのですが、ゲームに切り替えると半角英数(◡A)表示に戻ってしまい 、ゲーム内発言は半角英数(ローマ字入力ではなく)になってしまいます。下のKANAを押してもゲームと切り替えると半角英数入力にもどってしまいローマ字打ちしかできません。 サイトで調べてみたのですがわからなかったので直し方がわかる方よろしくお願いします。 PC初心者です。 VGC-H70B 2005年製 CPU Intel(R) Pentium(R) 4 CPU 3.40GHz メモリ 2,039MB グラフィックカード Intel(R) 82915G/GV/910GL Express Chipset Family OS Windows XP 三国RPGやシールオンラインなどやってて起きます。 別のPCではかな文字でうててたのでこのPCでおきてると思っています IME2010へUpDateするのをすすめてもらいましたが、DLしたところこの更新プログラムは、このオペレーティングシステムには適用されませんとでて無理でした。

  • 半角大文字英数?

    NECのノートパソコンを使っています。先ほどから、パソコンの上にある、Aというところ のランプが点灯し、変換がおかしいのです。 日本語入力していると、一瞬ですが、英語の大文字が見えます。また、F10キーで英語に変換すると、いきなり半角大文字の英数になってしまいます。さっきまでは、先ずは半角英数からだったのですが・・・ CAPSキーや、CTRLキーなどあちこちいじくりまわしていますが、治る様子が見られません。ご存知の方がいましたら、ご教授願います。

  • 半角英数を小文字にするにはどうしたらいいのでしょうか?

    今までは半角英数・全角英数の状態でアルファベットを押すと小文字で表示されたのですが急に大文字で表示されるようになりました。 あと同じくひらがなの状態でShiftキー+アルファベットを押すと大文字で表示されていたのが小文字になってしまいます。 どうしたら元に戻るのでしょうか? 以前にも同じことがあったのですがそのときは直す方法を見つけたんですが時間がたちすぎて忘れてしまいました。Shiftキー+???だったような・・・ ちなみにローマ字入力です。

dcp-j914nの機能について
このQ&Aのポイント
  • dcp-j914nはパソコンやスマートフォンからの印刷に便利な機能を備えています。
  • 無線LAN接続が可能であり、ケーブルの接続が不要です。
  • ブラザー製品に関する質問です。
回答を見る