下のスクリプトは、プルダウンメニューの項目を選択するとフォームにそのvalueを渡すものです。
フォームに original という name を指定しています。
putselect関数の中の document.reg.original の original を直で打つのではなく、
putselectの引数として、指定したのですがどのようにすると良いでしょうか?
JavaScript
function putselect(obj){
document.reg.original.value = obj.options[obj.selectedIndex].value;
}
HTML
<form name="reg">
<input name="original">
<select onchange="putselect(this)">
<option >#作品の選択</option>
<option value="a">A</option>
<option value="b">B</option>
<option value="c">C</option>
</select>
</form>
<hr>
こうなってほしい。
function putselect(obj,フォーム名の変数){
document.reg.フォーム名の変数.value = obj.options[obj.selectedIndex].value;
}
HTML
<form name="reg">
<input name="original">
<select onchange="putselect(this,original)">
<option >#作品の選択</option>
<option value="a">A</option>
<option value="b">B</option>
<option value="c">C</option>
</select>
</form>
<hr>
これと同じ動作であれば、nameでなくidなどでも構いません。
よろしくお願い致します。
No.2ベストアンサー
- 回答日時:
まぁ考え方次第ですね。
putselect()が、別フォームの情報を取りに行く可能性があるなら
二つ引数は必要ですが、つねにobjと同じフォームから参照するなら
引数を一つにしてしまう方が良いかもしれません。
function putselect(obj){
var f=obj.form;
f.elements["original"].value = obj.options[obj.selectedIndex].value;
}
<form>
<input name="original">
<select onchange="putselect(this)">
<option >#作品の選択</option>
<option value="a">A</option>
<option value="b">B</option>
<option value="c">C</option>
</select>
回答ありがとうございます。常にobjとおなじフォームです。
以下のようにすることで、やりたいことが出来るようになました。
ありがとうございます。
function putselect(obj,str){
var f=obj.form;
f.elements[str].value = obj.options[obj.selectedIndex].value;
}
<form>
<input name="original">
<select onchange="putselect(this,'original')">
<option >#作品の選択</option>
<option value="a">A</option>
<option value="b">B</option>
<option value="c">C</option>
</select>
No.1
- 回答日時:
formにnameをつけるのはあまりお勧めできません
this.formでアクセスしてください。
フォーム内ならobj.formってかんじ
この回答への補足
ご指摘ありがとうございます。
このように変更しました。
function putselect(form,obj){
form.original.value = obj.options[obj.selectedIndex].value;
}
<form>
<input name="original">
<select onchange="putselect(this.form,this)">
<option >#作品の選択</option>
<option value="a">A</option>
<option value="b">B</option>
<option value="c">C</option>
</select>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript 以前の質問だと、どの条件でも配列が表示されてしまいます。 1 2022/07/09 11:40
- JavaScript JavascriptからSQLへ繋ぎ方が分からない 3 2022/07/07 00:27
- JavaScript console.logがどうしても2つ機能しないのでアドバイスをくださいお願いします 2 2022/07/07 22:13
- JavaScript セレクトボックスを2つ選択してメッセージなどを表示するには。~運賃検索プログラムを完成させたい~ 1 2022/07/22 11:10
- JavaScript セレクトボックスで配列を呼び出したい。 1 2022/07/08 20:14
- JavaScript 電車の運賃を出すプログラムを作っています。 2 2022/06/22 09:36
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- JavaScript 2段階プルダウンで1段階目の選択を終えた後に選択ボックスを見えなくしたい 2 2022/07/05 21:58
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウン選択を変更すると、...
-
selectを変更不可にしたい
-
selectのすべての値を送信する方法
-
検索窓とプルダウンメニュー機...
-
ラジオボタンとプルダウンを連...
-
セレクトボックスで配列を呼び...
-
selectボックスで選択数を制限...
-
プルダウンの値によって活性・...
-
プルダウンのoptionの表示・非...
-
プルダウンの値をphpファイルへ...
-
3つの連動したプルダウンメニュ...
-
複数プルダウンで検索
-
<input>の選択肢をプルダウンメ...
-
JavaScriptで<select>の<option...
-
複数のプルダウンを1つにまとめ...
-
セレクトボックスの値を取得し...
-
2段階プルダウンで1段階目の選...
-
Selectボックスの一覧表示方法
-
scriptの日付計算について
-
disableとすることなく、ユーザ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
全てのselect要素をデフォルト...
-
javascriptでセレクトボックス...
-
Selectボックスの一覧表示方法
-
JavaScriptで<select>の<option...
-
プルダウン選択を変更すると、...
-
select要素のvalueを配列で取得...
-
selectを変更不可にしたい
-
<input>の選択肢をプルダウンメ...
-
ラジオボタンとプルダウンを連...
-
【JS】selectでchangeした時の...
-
VBScriptでHTMLのセレクトボッ...
-
リストボックス内の重複したも...
-
同じ名前のセレクトがある場合...
-
プルダウンの値によって活性・...
-
selectが変更されたらnameを指...
-
【javascript】連想配列からセ...
-
3つのselectでURLパラメータを...
-
複数のプルダウンを1つにまとめ...
-
selectボックスで選択数を制限...
-
セレクトボックスで配列を呼び...
おすすめ情報