※ ChatGPTを利用し、要約された質問です(原文:JavaScriptでの変数で数値を使った場合の疑問)
JavaScriptでの変数で数値を使った場合の疑問
このQ&Aのポイント
JavaScriptでの変数で数値を使った場合、複数のフォームデータを受け取る方法についての疑問です。
フォームにはhoge1からhoge30までの30個の入力欄がありますが、これらの値をforループを使って受け取りたいです。
Perlの場合は$iの変数を文字列として扱うことができますが、JavaScriptではどのようにすれば同じことができるのでしょうか?
JavaScriptでの変数で数値を使った場合の疑問
JavaScriptでの変数で数値を使った場合の疑問
<form action="sample.cgi" name="fm">
<button onclick="allInput()">全入力</button>
<input size="10" type="text" name="hoge1" value="">
<input size="10" type="text" name="hoge2" value="">
<input size="10" type="text" name="hoge3" value="">
・・・・
<input size="10" type="text" name="hoge30" value="">
</form>
上記のようなフォームがあったとします。
hoge1~hoge30まであるためにうけとる方法をforで受け取りたいのです。
<script Language="JavaScript">
function allInput() {
for ( var i = 1; i <=30; i++ ) {
document.fm.hoge+i.value = document.fm.hoge1.value;
//上のiのところで1から30を文字列としたい
}
}
</script>
内部的には
document.fm.hoge2.value = document.fm.hoge1.value;
document.fm.hoge3.value = document.fm.hoge1.value;
document.fm.hoge4.value = document.fm.hoge1.value;
・・・
document.fm.hoge30.value = document.fm.hoge1.value;
のようになっていきばいいのですが・・・
たとえになるかわかりませんが、Perlだと下のように$iの変数を文字列として扱えるのですが・・・
for ($i=1;$i <= 30; $i++){
${"sample$i"} = param("hoge$i");
}
よろしくお願いいたします。
お礼
完璧です。 感謝いたします。 ありがとうございました。