• ベストアンサー

テキスト入力の補助について

電話番号を入力するフォームを作っています。 このとき、jQueryを用いてフォーム内に9ケタ分のアンダーバーを表示し、入力に伴って、アンダーバーが一文字ずつ短くなるという機能をつけたいと考えています。 どのようにすれば実装できるでしょうか?

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

  • ベストアンサー
  • DoubtOwl
  • ベストアンサー率50% (63/124)
回答No.2

1.アンダーバーの途中で入力されると面倒なので   keydownイベントでフォーカスをテキストボックスの先頭に移動する。   正規表現を使って半角数字以外が入力されたら無視する。 2.keyupイベントで文字数をカウントし、9桁になるように調節する   (10桁以上だったらアンダーバーを削除、BackSpaceなどで文字が減ったらアンダーバー追加)

その他の回答 (1)

  • ONEONE
  • ベストアンサー率48% (279/575)
回答No.1

例えばinput textの文字数を数えて、文字数によってcssでボーダーの長さを表現してやったらいかがでしょうか。

関連するQ&A

  • エクセル2010の数字入力について

    電話番号入力についての質問です。 例) 01234567788 03467892233 05645672112 07865439764 ・・・ 上のように電話番号を次々と入力していくとします。 そこで、例えば、一番上の「01234567788」がまたでてきて入力する時に、下4桁の7788と入力すると、すでに入力した同じ数字が表示される、というようにしたいのですができる方法ありますでしょうか。 例えばオートコンプリート機能のように、入力した文字列を選択するといったようにできればよいのですが、数字列には使えないとの事なので、何か良い方法がありましたら、ぜひアドバイスの方よろしくお願い致しますm(_ _)m

  • JQueryで2つのテキストフィールドの片方必須

    お世話になります。 JQueryを使ってフォームのValidationを行っています。 2つのテキストフィールドの内、どちらか一方は必須フィールドにしたいのですが、その様なプラグインはありますでしょうか? 具体的には、固定電話番号と携帯電話番号のどちらかまたは両方に入力があった時のみOKとしたいのですが…

  • 入力フォームに文字を入れると消える文字

    よく名前やメールアドレスを入力するフォームがありますよね。 あれでクリックすると最初に表示されてる文字(「お名前」や「メールアドレスなど」)が消えるjavascriptのサンプルはたくさん見かけるのですが、 一文字目を入力した時に消えるサンプルってどこかにありませんか? かっこいいのでサイトに実装したいのですが。

  • エクセルで入力できる桁数は?

    整理番号を20桁の数字で入力しようと思ったら、15桁までしか入力できませんでした それ以上は「0」になってしまいます これは設定で決まっているからですか? 文字入力でなく数値として入力したいのですが・・・

  • 非連結テキストボックスの数字入力について

    どうしても分からないので質問します 今、アクセス97にてフォームを作成しています 構成はメインフォーム + サブフォーム ×2です コードを入力するテキストボックスをメインフォームに作成したのですが実際入力してみると桁溢れの場合、 「実行時エラー’3163’:フィールドが小さすぎるため、追加しようとするデータの量を受け入れることができません。データの量を少なくして、挿入または貼り付けを行なってください。」とエラーメッセージが表示されてしまいます エラーを出ないようにするにはどうすればいいのでしょうか? 宜しくお願いします

  • Access97のテキストボックスプロパティの入力規制について

    質問はAccessのテキストボックスに パスワードを入力する機能についてです。 パスワードは6桁の半角英数字のみ入力可能にしたいです。 現在、以下のことを試し、 半角英数字が6桁入力できるようになりました。 テキストボックスのプロパティで 定型入力部分に「password」と設定しテキストボックスに パスワードが「****」で表示できるようにしました。 そして6桁にしたいので、 入力規制の部分に「like "??????"」と設定しました。 問題は半角英数字は入力できるのですが、 スペースや記号も入力できてしまうことです。 スペースや記号は入力できないように設定することは可能でしょうか? また入力規制の部分で、半角英文字、半角数字を設定することは 可能でしょうか? 何か解決法がありましたら、教えてください。 よろしくお願いします。

  • ACCESSの入力フォームの質問です

    ACCESS初心者です。 1万人弱の携帯電話管理システムを作成中ですが、 判らないところが出てきて困っております。よろしくご指導ください。 電話番号をキーにしたテーブルにいくつかの表をJoinしたクエリを作成し、 電話番号の項目の抽出条件に[携帯電話番号を入力してください] を入れています。 そのクエリを元に単票形式の入力フォームを作成しています。 これを実行するとまず 「携帯電話番号を入力してください」と表示され携帯電話番号を 入力します。これで該当のレコードが表示されます。 必要な更新が済んだら「実行」(ビックリマーク)を押下して再度 「携帯電話番号を入力してください」を出して次の番号を入力。 削除したいときには「削除」(▲Xのようなマーク)で削除。 以上のように作りました。 このやり方自体、ベストなのかどうかわかりませんが一応はこれで 修正と削除ができるのですが、データ追加ができません。 「携帯電話番号を入力してください」のところで追加したい番号を 入力すると、全項目スペースの入力フォームが表示されて入力は できるのですが、肝心の電話番号の欄には、最初のダイアログで 指定した電話番号が連携されず 「フィールドに必要なプロパティがTrueに設定されているために  このフィールド”電話番号”にはNull値は挿入できません。  値を入力してください」 と表示されてしまいます。 ダイアログで指定した数値をフォームの該当フィールドに連結させて レコードを追加するにはどうしたらいいでしょうか? 判りにくい質問になっているかもしれませんが、よろしくお願いします。 ACCESSは2002です。

  • Javascriptでの入力補助について

    googleやyahooで検索文字を入れたら、 リストが出てくる機能をjavasriptで実現したいと思っています。 なんとか、リストらしきものはで来るようになったのですが、選択ができません。 (本当に検索文字にたいして前方一致しているリストが表示されている感じ) どうすれば、googleの入力みたいに↓やマウスクリックで選択できるようになるのか、 悩んでいます。 現状はこのような感じです。 出てくるリストは、最初に画面が表示された時点で、画面がもっていることとする。 javascriptの配列で持っています。 htmlの部分は、入力部分にinputタグ。その下にdivタグを使用してます。 onlode時点で、setInterval関数を使い、0,5秒ごとに関数を呼び出すようにしました。 そのなかで、入力された文字と保持しているリストを比較し、 一致しているリストの配列と件数を取得。 そのあとに、divタグのところに、innerHTMLに配列を順番にいれるとしました。 →結果として、画面で入力すると、下に候補の文字列が表示。  ただし、そこにカーソルをもっていっても、何も出来ず表示されているだけの状態  が出来ています。 ライブラリ等を使わず、javascriptのみで実現したいのですが、可能でしょうか。 よろしくお願いいたします。

  • EXCEL 郵便番号入力チェック

    EXCELで 郵便番号を入力した時にチェックを掛けたいのですが、頭に”0”がある(北海道)の確認で来ません。 書式にて”郵便番号” 、 入力規則にて7文字 制限 にしていますが、 頭に”0”を入力すると入力規則に引っ掛り、エラーが表示されてしまいます。 入力規則に式  =7=LENB(TEXT(A1,"0000000")) を入れると、 頭に”0”を入れてもエラーが出なくなるのですが、 ”0”+7桁(計8桁)入力すると、”0”を除いた後ろの7桁になってしまいます。 01234567⇒123-4567 とか、001234567⇒123-4567 ”0”を含めた7桁入力チェックをする場合には、どうすれば良いかお教えください。 お手数をお掛け致しますが、よろしくお願いします。

  • 電話番号かどうかを判断したい(Perl)

    フォームに入力された文字が電話番号かどうかを判断したいと考えています。 ハイフンは使いません。 if ($$in{tel} =‾ /¥-/) { &error("電話番号はハイフン( - )なしの10桁または11桁でご記入ください"); } if ($$in{tel} =‾ /^\d{10,}+$/) { &error("電話番号はハイフン( - )なしの市外局番からご記入ください"); } このようにしてみたのですが、うまく動きません。 どうすればいいんでしょうか... よければ教えてください。

    • ベストアンサー
    • Perl

専門家に質問してみよう