• 締切済み

テキストフィールドを追加するスクリプトを

教えていただけないでしょうか? ボタンをおすと、どんどんテキストフィールドが増やせる 単純なスクリプトを書きたいのですが、Javascript初心者のため、 恥ずかしながら手が出ません。 できればprototype.jsを使用したものがいいのですが、 フィールドの値に関するものなどしかなくて。 フィールドをはじめ、エレメントを追加するにはどのように記述すれば よいのでしょうか。

みんなの回答

  • steel_gray
  • ベストアンサー率66% (1052/1578)
回答No.1

prototype.js自体にはエレメントの生成ってなかったんじゃないかなぁ? DOMで用意されているのは ・エレメントを作るのはcreateElement ・エレメントを追加するのは (prototype.jsにもバリエーションがあるようだけど) appendChildです。 以下、サンプル。 <html> <head> <title></title> <script type="text/javascript"> // 「<input name="XXX"><br>」 をtargetに追加する function addfield(target){ var O = document.getElementById(target);//追加する対象(親エレメント) var INP = document.createElement('input');//INPUTの生成 INP.setAttribute('name','XXX');//属性の設定(name="XXX") O.appendChild(INP);//対象への追加 var BR = document.createElement('br');//BRの生成 O.appendChild(BR);//対象への追加 } </script> </head> <body> <p id="hoge"></p> <input type="button" value="+" onclick="addfield('hoge')"> </body> </html> 余談ですが、type="text"(デフォルト)以外を追加するのはちょっと厄介(IEの手抜き実装のため)

spongebob-sqp
質問者

お礼

ありがとうございます。 やっぱりprototype.jsでは無いのですね。。。 以前Ext JSを触れていたことがあるので、サポートされてるのかと思っていたんですが。 納得したうえに、理解できてすごく助かりました☆

関連するQ&A

専門家に質問してみよう