• ベストアンサー

HTML、同じデータを表示する方法

HTMLの2箇所のテキストボックスに同じデータを表示したいのですが、やり方がわかりません。 たとえば、質問1と質問5が「氏名」のとき、  質問1の答えに書いた文字列が、質問5の回答欄に表示される、 逆に、質問5を先に答えた場合には、質問1の回答欄に質問5で答えた文字列が表示される ようにしたいです。 質問1 氏名:<input type="text" name="氏名" />  :  : 質問5 氏名:<input type="text" name="氏名" /> では、別々の名前入力になって、関連つけることができません。

  • HTML
  • 回答数2
  • ありがとう数2

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

  • ベストアンサー
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

おなじページ内でよければこんな感じ? <script> try{ document.addEventListener ('keyup',function(e){keyupfunc(e)},true); }catch(e){ document.attachEvent('onkeyup',function(e){keyupfunc(e)}); } function keyupfunc(e){ var t = (e.srcElement || e.target); if(t.nodeName=="INPUT"){ switch(t.name){ case "ans1": t.form.elements["ans5"].value=t.value; break; case "ans5": t.form.elements["ans1"].value=t.value; break; } } } </script> <form> <p> 質問1 氏名:<input type="text" name="ans1" /> 質問5 氏名:<input type="text" name="ans5" /> </p> <form>

iruiru298
質問者

お礼

まさに、これです。 ありがとうございます!! 一方を書き換えると、他方も書き変わるの確認しました。 このようなペアが何箇所かあるので、回答1-5ペア用のスクリプト、回答2-9ペア用のスクリプトといった具合にペアごとに、スクリプトを用意すればいいのですね。 助かりました。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

htmlだけでは前ページのデータを引き継ぐことはできません なにかサーバーサイドで動くプログラムが必要です。 (javascriptでcookieを使えばできないことはないですが・・・) またinputで同じnameを指定するのはあまり得策ではありません。 simei1、simei2・・・のように別名をつけるか、 一部プログラムで認識されるsimei[]のような文字を使うとよいでしょう。 なおnameに漢字などを使うとうまくデータが渡らないケースがあるので 英数文字(および一部許された文字)で指定することをお勧めします。

iruiru298
質問者

お礼

回答ありがとうございます。 >またinputで同じnameを指定するのはあまり得策ではありません。 そうでした。 いろいろ調べて、ボタンを使うと質問1の答えに書いた文字列が、質問5の回答欄に表示されるとこまでできましたが、その逆が行きません。 その逆のボタンを作成するなら可能ですが、新しい値にそろえるようなもっと賢い方法ありませんか? 氏名:<input name="ans1" /><br> :<br> :<br> 氏名:<input name="ans5" /><br> <input type="button" value="同期" onclick="document.a.ans5.value = document.a.ans1.value;"><br>

関連するQ&A

  • HTMLについて

    HTMLについて分からない事がありますので、ご教授願います。 <INPUT TYPE=TEXT NAME=TEST VALUE="abc"def"> 上記のように、テキストボックスに「abc"edf」を初期表示させる1文を書きました。 しかし、「abc」しかテキストボックスには初期表示されません。 原因は「abc」の次にある「"」がVALUEに代入する文字列の最後とみなされている ためなのですが、文字列中の「"」を文字として認識させて「abc"def」と初期表示 させたいのですが、何か良い方法はないでしょうか? 実は、powerscriptでプログラミングをしています。 そのため、VALUEに指定する文字列は変数を指定していますので、 「VALUE=''」にしてもその変数に「'」が入力されていたら同じ現象が生じてしまいます。 なんとか、「"」を文字として認識させる方法はないのでしょうか?

  • HTMLにて表示非表示後の行詰め方法

    フィールドのクリックによってText文を非表示/表示 切りかえることを考えています。 その際(非表示)前後の文書(入力域、ボタン)などの 行詰めの方法がわかりません。 皆さんに教えていただきたく投稿しました。 よろしくお願いします。 尚サンプルを付けました。 <HTML> <HEAD> <TITLE>サンプル</TITLE> </HEAD> <script type="text/javascript"> <!-- var flag = 0; function A() { if (flag==0) { document.all.T2.style.visibility = 'hidden'; document.all.text1.style.visibility = 'hidden'; flag = 1; } else { document.all.T2.style.visibility = 'visible'; document.all.text1.style.visibility = 'visible'; flag = 0; } } --> </script> <BODY> <DIV ID="text1" STYLE="font-size=10pt;font-family=Times New Roman">教えてください</DIV> 下記入力フィールド1でクリックすると表示切替します。<br> <input type="text" size="30" name ="a" value="入力フィールド1" id="T1" onclick="A()"> <p> <button >文字列変更1</button><p> <button >文字列変更2</button><p> <input type="text" size="30" name ="b" value="入力フィールド2" id="T2"> <p> このページはテストです。 </BODY> </HTML>

  • HTMLのフォームでのデータの持っていきかたについて

    HTMLとPHPを使いアカウント作成のページを作成しています。 テキストボックスに名前等を入力して登録ボタンを押すときに、パスワード認証画面(アカウント作成用のパスワードを入力)を経由して次の画面に行きたいと考えています。その際にはテキストボックスに入力したデータを持っていかなければならないのですが、うまく持っていってくれません。 actionに直接javascriptを入れるとデータは持っていってくれないのでしょうか? よろしくお願いします。 <form method='post' action="JavaScript:var pass=prompt('パスワードを入力してください','****');if(pass){location.href= pass+'.php';}"> <p>名前<input type="text" name='hName' value='$hName'></p> <p>住所<input type='text' name='hpostcode2' value='$hpostcode'></p> <p>コード番号<input type='text' name='haddress2' value='$haddress'></p> <input type="submit" value='$hNamebutton2'> </form>

    • ベストアンサー
    • HTML
  • ASPでHTMLの内容を取得するには??

    HTMLのテキスト1のテキストボックスはOnClickイベントで文字列を取得し表示させてます。 テキスト2のテキストボックスに文字列を入れてその文字列をtest.aspで取得させてます。 test.aspでもテキスト1の内容を取得する方法はありますでしょうか?? formの入れ子はできないし、1つのform内でテキスト1、テキスト2を入れると OnClickイベントがきかなくなります。 わかる方おりましたらご教示ください>< 宜しくお願い致します。 ------ aa.html ---------------- <html> <head> <title>ASP TEST </title> </head> <body> <form name="fm1"> <td> <p>テキスト1:<input type="text" name="pathTXT" size="40"> <input type="button" name="fileBT" value="選択"> </p> </td> </form> <form action="test.asp" method="post"> <td> <p>テキスト2:<input type="text" name="keyTXT" size="40"> <input type="submit" value="実行"> </p> </td> </form> </body> </html> <SCRIPT LANGUAGE="vbscript"> Sub fileBT_OnClick() Document.fm1.pathTXT.value = "aaaaaaaa" End sub </SCRIPT> ------ test.asp ---------------- <%@LANGUAGE="VBSCRIPT"> <% Response.Write(Request.Form(keyTXT)) '''↓↓↓↓↓↓↓↓↓ aa.htmlのpathTXTを取得したい。。。 Response.Write(Request.Form(pathTXT)) >%

    • ベストアンサー
    • HTML
  • HTMLでテキスト入力し表示させる

    HTMLでテキストボックスに文字を入力し、表示させたいのですがうまくできません。 見た目はできているようなのですが、文字が表示されない状態です。 コードを記載しますので、お手数をお掛けしますがご教授頂けますでしょうか。 <html> <head> <script> function add(){ document.getElementById("target").innerText = document.getElementById("name").value; target = document.getElementById("output"); document.write(target); } </script> </head> <body> <p>名前を入力してください</p> <input id="name" name="name" type="text" size="30" onkeydown="update_field();"> <br> <input type="button" onclick="add()" value="実行"> <form action="index.html" method="post"> <br> <input type="submit" name="exit" value="戻る"> </form> </body> </html>

  • 入力文字制限の方法

    質問なんですが・・・ 氏名<input type="text" name="name" value="" id="name"> というテキストボックスがあるんですが、これに全角ひらがな(文字)以外で入力して送信された場合に全角で入力するよう、alertを返す処理をしたいのですが、文字指定の処理の記述などを教えていただけないでしょうか?正規表現などがあったのですがよくわからなかったので、お願いします><

  • テキストボックスに文字飾り表示(2の3乗)が出来ない。

    テキストボックスに文字飾り表示(2の3乗)が出来ない。  JavaScriptを使用しテキストボックスに上付き、下付き文字を表示したいのですが上手く表示しません。HTMLのコードが出てしまいます。下記簡単なコードを添付しますので、何方か正しい表示方法を教えてください。 参考までにコード中(1)は正しく表示できず(テキストボックス中)、(2)は正しく表示します。(非テキストボックス) <HTML> <HEAD> <SCRIPT language="JavaScript"> function disp(){ var c=new Array("2"+"3".sup(),"1","2"); document.tm.a1.value=c[0]; // (1) document.write(c[0]); // (2) } </SCRIPT> </HEAD> <body> <FORM name="tm"> <INPUT type="button" value="" onClick="disp()"> <INPUT name="a1" type="text" size="20" width="10"> </FORM> </body> </HTML>

  • HTMLタグの生成について

    HTMLタグの生成について、質問させて頂きます。 ボタンをタップすると、テキストボックスに「<a>」タグを表示する事は できたのですが、複数回押下した際には既にテキストボックスにある <a>タグの後に<a>を追加させたいのですが、上書きされてしまうようでうまくいきません。 参考サイトまたは、お分かりの方がいたらご教授お願い致します。 下記がサンプルソースになります。 よろしくお願い致します。 <script language="JavaScript"> <!-- function my61() { document.form6.text62.value='<a href=#>';} //--> </script> <form name="form6"> <input type="text" name="text61" size="20">   <input type="button" value="CLICK!" onClick="my61();"> </form>

  • HTML+CSSの印刷に関する質問です。

    HTML+CSSの印刷に関する質問です。 テキストボックスのサイズ内に収まりきらない文字を入力している場合、印刷時に入力 した文字が切れてしまうのですが、印刷時だけ自動的に拡張するといったことは可能で しょうか。   <input class="text" size="20" type="text" /> このような感じでテキストボックスを設置してるんですが、size=20を超えて入力した文 字が印刷時に切れてしまいます。 ご回答よろしくお願い致します。

    • ベストアンサー
    • HTML
  • HTMLのテキストボックスへのドラッグ&ドロップについて

    HTMLのテキストボックスに文字列(テキスト)をドラッグ&ドロップしたときに、イベントを発生させたいのですが分かりません。 <INPUT TYPE="text" NAME="test" VALUE="" ondragdrop="alert('test!')"> というのを作ってみましたが、ondragdropはファイルにしか対応していないみたいなので無理でした。 ondragoverは反応しましたが、マウスを離す前にイベントが発生するため、こちらの意図する動作にはなりません。 やはりそういうイベントハンドラは用意されていないのでしょうか?

専門家に質問してみよう