前提・実現したいこと
javascriptで計算をするwebアプリを作ろうとしていますが、躓いてしまいました。
発生している問題・エラーメッセージ
htmlは
html
1 2 <form name="frm1"> 3 <p>値1</p> 4 <input type="number" name ="a_1" value=0> 5 <p>値2</p> 6 <input type="number" name ="a_2" value=0> 7 8<form name="frm2"> 9 10 <p>サブ値1</p> 11 <input type="number" name ="b_1" value=0> 12 <p>サブ値2</p> 13 <input type="number" name ="b_2" value=0> 14 15<form name="frm3"> 16 17 <p合計1</p> 18 <input type="text" name="sum_1" value=0> 19 <p>合計2</p> 20 <input type="text" name="sum_2" value=0>
としていて、frm1とfrm2のインプットタグの中の値をfrm3のインプットタグに返す(値1+サブ値1 = 合計1)ように対応した処理をしたく、javascriptは
javascript
1 frm3.sum_1.value = (eval(frm1.a_1.value) + eval(frm2.b_1.value)); 2 frm3.sum_2.value = (eval(frm1.a_2.value) + eval(frm2.b_2.value)); 3
と書きました。
これだと問題なく処理できるのですが、同じような処理をこれ以外にも何回もするので配列を作成してループさせたいと思い試してみたところで躓いてしまいました。
実際に書いてみたものは
javascript
1 2var num =['1','2']; 3for (let i=0;i< num.length ;i++){ 4frm3.sum_num[i].value = (eval(frm1.a_num[i].value) + eval(frm2.b_num[i].value)); 5} 6
で、値の合計が返されません。
sum_num[i]の部分に問題があると思うのですが、どのようにして配列の中の文字を連結させればよいのでしょうか?
宜しくお願いします。
回答1件
あなたの回答
tips
プレビュー