- ベストアンサー
Flashで文字判定は可能?
- Flashを使用して、半角英数の入力判定を行うことは可能でしょうか?メールアドレスの入力ボックスを作成し、送信ボタンが押された際に、入力された文字が半角英数かどうか判定するスクリプトを作成したいです。
- 調べてみたが、Flashの解説を見つけることはできませんでした。ActionScriptとFlashの関係についても理解が必要です。
- 初心者ですが、Flashを使用して半角英数の入力判定を行いたいです。アドバイスや教えていただけると助かります。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
書かれていらっしゃるページのスクリプトは, Flash で使用できる ActionScript です。 普通の ActionScript1.0 です。 新規ドキュメントを作成して, _root の フレーム1 に次のように書いて, ---------------------------------- // コードチェック(文字,範囲小,範囲大) function checkCode(str, min, max) { var len = str.length; while (len--) { var num = str.substr(len, 1).charCodeAt(0); if (num<min || num>max) { return false; break; } } return true; } // 半角数字か? trace(checkCode("123", 0x30, 0x39)); //→true trace(checkCode("A23", 0x30, 0x39)); //→false ---------------------------------- 「制御」→「ムービープレビュー」。 ちゃんと動作します。 > メールアドレス入力用にテキスト入力ボックスを作成し、 > 送信ボタンが押された場合に、 > その入力ボックスに半角英数が入力されているか を判定 "テキストボックス" はコンポーネントです。 簡単な実験やごく一般的なものにはテキストボックスではなく, テキスト入力の "テキストフィールド" を使用するのが普通だと思います。 ◎ 簡単な使用例 新規ドキュメントを作成し, テキスト入力のテキストフィールド,インスタンス名「my_txt」を作成します。 その横辺りにでも, ボタンインスタンスの「送信ボタン」を作成します。 インスタンス名は「my_btn」にしておきます。 そして, _root のフレームに次のように書けば使用できます。 --------------------------------------- // コードチェック(文字,範囲小,範囲大) function checkCode(str, min, max) { var len = str.length; while (len--) { var num = str.substr(len, 1).charCodeAt(0); if (num<min || num>max) { return false; break; } } return true; } my_btn.onRelease = function() { if (checkCode(my_txt.text, 0x21, 0x7E)) { getURL("Http://Www.google.co.jp/search?q=" +my_txt.text, "_blank"); } else { my_txt.text = "全角は使用できません"; } }; --------------------------------------- ※ このページの自動リンク機能がはたらかないように, Http://Www.google.co.jp/s… と h を H,w を W にしています。 16進数のキャラクターコード表はどこにでもありますが, たとえば次のURLなどを見てもわかります。 http://www.algolab.co.jp/~lum/pcnyumon/nyu033.htm
お礼
書き込みありがとうございます。 途中までやって時間がとれなくなってしまっていたものでお礼が遅れてしまいました。まだ途中ではあるのですが、もう少し時間もかかりそうなので先にお礼を書き込みさせて頂きました。 ありがとうございました。