• ベストアンサー

入力フォームの作成について

入力フォームを細かく設定して作りたいのですが、 まず、テキストエリア内に文章が表示されており、 入力の際にその文章が消えるようにするには、 どのような記述にすればいいでしょうか? 次に入力の文字を半角や全角、数字などを固定した状態にするにはどうずればいいでしょうか? 最後に上記の2つは携帯の各キャリアとPCとでは記述方法がちがうのでしょうか?

noname#135058
noname#135058

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

  • ベストアンサー
  • ulmo
  • ベストアンサー率43% (197/454)
回答No.2

JavaScriptで、その欄にフォーカスが移った瞬間、文字列を削除します。 ただ、最初に書いてあった文字列の時に削除、 という風に条件判断しないと、記入した後、別にフォーカスを移し、 また戻った時に削除されてしまうので注意が必要です。 半角に固定する方法は、IE なら CSS に ime-mode というのがあり、 それでコントロールできます。ただ、全角固定や数字のみ というのは無理だったと思います。他のブラウザではそもそもできません。 ケータイは au なら format 属性で指定できます。 他のキャリアも同様のものがあるかもしれませんので調べて下さい。 いずれにせよ、ブラウザ側でのチェックは限界があるので、 受け付けるプログラムの方で全半変換・チェックするのが普通です。

noname#135058
質問者

お礼

大変丁寧な説明、ありがとうございました。 さっそく試してみたいと思います。

その他の回答 (1)

  • SAYKA
  • ベストアンサー率34% (944/2776)
回答No.1

>入力の際にその文章が消える javascriptによる制御になるね、それは。 >文字を半角や全角、数字などを固定した状態にするには これはブラウザとOS依存なので統一は不可能だね。 >携帯の各キャリアとPCとでは記述方法がちがうのでしょうか? 携帯では絶望的 PCでも文字のところで書いた通り、環境依存が強いから難しいね。

noname#135058
質問者

お礼

javascriptが勉強不足なので、スグにはできなさそうです。 半角、全角は下手に使わない方が良さそうですね。 ありがとうござました。

関連するQ&A

  • 文字入力について教えてください。

    1.文字の大文字・小文字固定入力   (1).半角で大文字のみ入力   (2).半角で小文字のみ入力   (3).全角で大文字のみ入力   (4).全角で小文字のみ入力   テキストボックスの入力で上記(1)~(4)の入力方法をしたいのですが   どおすればよいのか教えてください。   ※UCase・LCaseで変換できるのはしっているのですが    1文字単位でできたいのですが 2.半角の数字のみの入力   aの入力を受け付けないようなことおしたいのですが   できないでしょうか?

  • 携帯サイト作成 半角数字(半角英数字)をデフォルトで入力する状態にしたい。

    今携帯サイトを作成していまして、テキストエリアに半角数字(5桁)を入力させる形式の 応募フォームを作りたいと思っています。 ただ、実際にサイトで入力しようとした時、デフォルトで漢字(ひらがな)入力状態になってしまってます。 これをデフォルトで半角数字にする方法はありますか? また別のフォームで、メールアドレスも取りたいのですが、デフォルトで半角英字にする方法はございますか? 3キャリア共通の方法があれば最高です。 宜しくお願いいたします。

    • ベストアンサー
    • HTML
  • Webフォームにおける数字入力時の半角・全角について

    Webフォームで住所などを入力する時に 数字入力のところで、 ●電話番号は半角 ●住所の番地は全角 ●郵便番号は半角 となっているサイトって結構ありますよね。 正しい数字を入れているにもかかわらず、 上記の「半角・全角」の決まりを守らないと エラーになって再入力させられます。 すごくややこしいんですが、 なぜこのようになってるのでしょうか? 不親切な仕様ですよね 例えば、このようには出来ないのでしょうか?↓ ●電話番号も住所の番地も半角(または全角) に統一する。もしくは ●半角でも全角でもどちらでも良い 上記どちらかには出来ないものなのでしょうか? 上記を実現するには、プログラムの実装が難しいんでしょうか? もちろん、上記を実現していて、わかりやすいユーザインターフェースのサイトも あるにはあると思いますが。

  • テキストフィールドの入力タイプを切り替えたい

    こんにちは。 いつもお世話になっております。 応募フォームを作成しておりまして、20項目程入力項目があるのです。 それぞれ、”全角で入力して下さい”とか、”半角で入力して下さい”という注釈をつけ、チェックを入れて 『送信』ボタンクリックで、希望している全角・半角文字でない場合などのエラーも出るようにはしたのですが…。 どこかのサイトで、キーボードの設定を”全角”にしていても、 半角入力希望のテキストエリアにカーソルが来たら 自動で半角になった所があった気がするのです。 探してみたのですが、見つからなかったので、だんだん記憶に自身が無くなって来たのですが、上記のような事は可能なのでしょうか? どうかご指導よろしくお願い申し上げます。

  • フォーム入力のチェック

    フォームの入力をCGI(Perl)でチェックするとき、 全角の漢字、カタカナ、ひらがなでの入力以外は禁止にしたいです。 どなたかいい方法をご存知でしょうか? とりあえず、現在は、 jcode.plで全角英数字⇒半角英数字に変換 フォームに入力された文字列を一文字(半角2文字)ずつ抽出して、 $a=~ s/([^\w ])/'%' . unpack("H2", $1)/eg; でエンコードしたものが%を含んでいるかどうかで判別してます。 でもこれだと全角英数字と半角英数字しかシャットアウトできません。 記号文字なども入力出来ないようにしたいです。 よろしくお願いします。

    • ベストアンサー
    • CGI
  • テキストエリアに「\1,000,000」と入力すると文字化けするので良い方法はありませんか?

    入力テキストエリアに「\1,000,000」と入力すると文字化けするので、 何か良い解決策はありませんか?\1,000,000はそのまま手入力で計算した 値ではありません。 また、テキストエリアですので、 \1,000,000 \1,000,000 で2行になる事もあります。その場合、改行コードなども関係してくると 思います。混乱してきたので、わかる方ご伝授お願いいたします。 半角\を入れると、全角¥に変換するなどです。 もしよければもうひとつ、半角数字、半角英字を全て、全角にする方法はありますか? 非常に困っています。良い解決策があれば教えて下さい。

    • ベストアンサー
    • Perl
  • php テキストエリアの入力チェック

    現在、phpを使用してメールフォームを作成しております初心者です。 入力確認画面(二画面目)において テキストエリア(お問い合わせ内容入力エリア)内の入力内容が ・半角もしくは全角スペースのみ ・テキストエリア未入力で初期値  【 こちらにお問い合わせ内容を入力! 】 のままの場合のチェック&エラーメッセージを表示させたくて 下記のようなphpソースを記述してあれこれやってるのですが思うようにいきません。 テキストエリアに半角英数、全角文字が入力された場合は 思い通りにチェックを通過します。 しかし・・・ ・全角スペース1文字分以上 ・半角スペース2文字分以上 入力された場合もチェックを通過してしまいます。 半角スペース1文字分までの入力の場合はエラーメッセージを表示してくれるのですが・・・ ~前略~ <?php //お問い合わせ内容 if ($contents == " " || $contents == "こちらにお問い合わせ内容を入力!") { $errormsg[] = "お問い合わせ内容を入力して下さい"; } ?> ~後略~ 当方まだまだphp初心者れべる故、わかりやすくご回答頂けると有難いのですが・・・ どなたかご回答宜しくお願い致します。

    • ベストアンサー
    • PHP
  • 入力フォームで英字しか書けない

    まえまえから疑問だったのですが、こういったフォームに文字を書き込むとき、日本語で書く場合は半角/全角切り替えのキーを押しますよね? たまにこういう日本語が入力できるはずのフォームでも、半角英字しか入力できなかったりするのはなぜなのでしょうか?その場合私はいちいちウィンドウを閉じてまた開いて入力しなおすのですが…。 何か対処法はあるのでしょうか?

  • 半角英数字のみを受け付ける入力フォーム

    PHPで半角英数字文字のみを受け付ける入力フォームをつくりたいので教えてください。 JavaScriptではコピペで全角を受け付けてしまうので困っています。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • 入力フォームの文字変換について

    宜しくお願いします。 フォームで入力された文字をphp上で全角⇔半角変換や、空白の削除などをする方法を教えて下さい。

    • ベストアンサー
    • PHP

専門家に質問してみよう