- ベストアンサー
フォーカスすると初期値の一部分だけが消去されるスクリプト
マウスでフォーカスするとtextarea等に記入されている初期値 (「ここに名前を記入」・・・等々)が消える入力フォームをよく見かけますが、今回、初期値の一部分だけを消去させたいと思っております。 具体的には ・以下に必要事項を入力してください ・名前 ・住所 という初期値があるとして、フォーカスすると ・以下に必要事項を入力してください のみを消去させるスクリプトです。 これを実現するスクリプトコードもしくはサンプルのurlを教えて頂けませんでしょうか。 よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
#1さんのスクリプトはまさにおっしゃっている命題のとおりになっていますが、 なにがどういけないのでしょうか? あえてやるなら、以下のようなやり方もあるかとは思いますが・・・。 <script> function hoge(obj){ var v=obj.value v=v.replace(/\r\n/,"\n"); v=v.replace(/・以下に必要事項を入力してください\n/,""); obj.value=v; } </script> <textarea onfocus="hoge(this)"> ・以下に必要事項を入力してください ・名前 ・住所 </textarea>
その他の回答 (1)
- taketan_mydns_jp
- ベストアンサー率58% (450/773)
簡単ですよ。 こんな感じですか? <textarea onfocus=" this.value = '・名前\n・住所\n'"> ・以下に必要事項を入力してください ・名前 ・住所 </textarea> JavaScriptは基本的にすべてソースが公開されてますので、ブラウザのソースを見るで見れば良いと思います。
補足
すみません。ちょっと質問の文章が稚拙でした。 <textarea onfocus=" this.value = '・名前\n・住所\n'"> ・以下に必要事項を入力してください ・名前 ・住所 </textarea> これですと、onfocusで・名前\n・住所\nを表示させるのですが、 望んでいるのは「onfocusで 所定の文章を消す」という動作をやりたいのです。お手数ですがよろしくお願いいたします。
お礼
こういうことなんです。ばっちり動きました。ありがとうございます。