
はじめまして!
javascriptでフォームAに入力した内容を
ボタンが押されたら同一ページのフォームBに
ペーストされるscriptを作りたいのですが
そういったスクリプトを公開しているものがあれば
教えていただきたいです。よろしくお願いいたします。
やりたい事:
[フォームA]---------------------
お名前:テキスト
性別:ラジオボタン
趣味:セレクトボックス
コメント:テキストエリア
[コピーボタン]←内容をコピーするボタン
--------------------------------
↓コピーボタンが押されたら↓
[フォームB]---------------------
お名前:テキスト
性別:ラジオボタン
趣味:セレクトボックス
コメント:テキストエリア
--------------------------------
Aフォームに入力した内容Bフォームに反映される
よろしくお願いいたします。

No.1ベストアンサー
- 回答日時:
<html>
<body>
<form id="a">
<input type="text" value="osiete goo"><br>
<input type="radio" value="m" name="sex">男
<input type="radio" value="w" name="sex" checked>女<br>
<select>
<option value="0">子供の遊び</option>
<option value="1" selected>大人の遊び</option>
</select><br>
<textarea>あぁ~</textarea>
<input type="button" value="copy" onclick="copyFormValue(this.form,'b')">
</form>
<form id="b">
<input type="text" value=""><br>
<input type="radio" value="m" name="sex">男
<input type="radio" value="w" name="sex">女<br>
<select>
<option value="0">子供の遊び</option>
<option value="1">大人の遊び</option>
</select><br>
<textarea></textarea>
</form>
<script>
function copyFormValue(moto,sore){
var om=moto.elements;
var os=document.getElementById(sore).elements;
for(var i=0,m=om.length;i<m;i++){
var f=om[i].type;
if(f!='button') if(f!=os[i].type) { alert('ちがう');return;}
switch(f){
case 'text': case 'textarea': case 'hidden': os[i].value=om[i].value;break;
case 'checkbox': case 'radio': os[i].checked=om[i].checked; break;
case 'select-one': os[i].options[om[i].selectedIndex].selected=true;
}
}
}
</script>
</body>
</html>
selectのマルチには未対応
フォームはまったく同じ順序であること
No.2
- 回答日時:
厳密にやるにはもっと細かい設定が必要ですが
単純にやるならいかの方法でいけます
ただし、いくつかの条件が必要です。
・nameでひもづける。
・radio以外おなじ名前の要素をつかわない
・radioやselectは同じ要素数にする
<script>
function copyForm(){
var a=document.getElementById("a");
var b=document.getElementById("b");
for(var i=0;i<a.length;i++){
var n=a[i].name;
if(!b[n]) continue;
switch(a[i].type){
case "text":
case "textarea":
b[n].value=a[i].value;;
break;
case "select-one":
b[n].selectedIndex=a[i].selectedIndex;
break;
case "checkbox":
b[n].checked=a[i].checked;
break;
case "radio":
if(a[i].checked){
for(var j=0;j<a[n].length;j++){
if(a[i]==a[n][j]) break;
}
b[n][j].checked=true;
break;
}
}
}
}
</script>
<form id="a">
お名前:<input type="text" name="name"><br>
性別:<input type="radio" name="sex" value="0">男 <input type="radio" name="sex" value="0">女<br>
趣味:<select name="hobby">
<option value="">選択</option>
<option value="x">x</option>
<option value="y">y</option>
<option value="z">z</option>
</select><br>
コメント:<textarea name="comment">テキストエリア</textarea><br>
ついで:<input type="checkbox" name="tuide" value="1"><br>
<input type="button" value="コピー" onClick="copyForm()">
</form>
<form id="b">
お名前:<input type="text" name="name"><br>
性別:<input type="radio" name="sex" value="0">男 <input type="radio" name="sex" value="0">女<br>
趣味:<select name="hobby">
<option value="">選択</option>
<option value="x">x</option>
<option value="y">y</option>
<option value="z">z</option>
</select><br>
コメント:<textarea name="comment"></textarea><br>
ついで:<input type="checkbox" name="tuide" value="1"><br>
</form>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
hiddenのvalueの値を変えたい
-
子から親へチェックボックスの...
-
value内に変数を入れたい
-
フォームに入力された数値を計...
-
テキストボックスに入力された...
-
関数名などの固有名詞(?)を...
-
ホームページビルダーのスクリ...
-
setIntervalの間隔を途中で変更...
-
return trueとreturn falseの用...
-
<input>の選択肢をプルダウンメ...
-
特定<table>内の<td>の色を変える
-
selectを変更不可にしたい
-
ラジオボタンが選択されたらテ...
-
プルダウンで選択すると、DBの...
-
onclickをEnterキーでも行いたい
-
onchangeイベントを強制的に発...
-
チェックボックスのON/OFFでVal...
-
【javascript・PHP】プルダウン...
-
チェックボックス付きのテーブ...
-
データベースからのarray を j...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
value内に変数を入れたい
-
hiddenのvalueの値を変えたい
-
テキストボックスに入力された...
-
3つ以上の数値の中から、最も...
-
javascriptでhiddenに二次元配...
-
どのボタンがクリックされたの...
-
複数のsubmitボタンで押された...
-
これはAnd演算に変えてよいか?
-
VB.NET DateTimeの型について
-
HP内に検索エンジンを置きたい...
-
UART通信の取説で,left floati...
-
setIntervalの間隔を途中で変更...
-
jsで、配列内の文章を改行する...
-
ラジオボタンとテキストを同時...
-
[JavaScript+<select>]最初から...
-
プルダウンメニューリンクを新...
-
selectboxのoptionタグのvalue...
-
ラジオボタンを押して計算結果...
-
ループで連続したフォームの値...
-
[C#]連想配列の中に配列を入れたい
おすすめ情報