如何在javascript上使用循环并使用var in循环?
点击按钮时。它将使用loop for
但不行,我该怎么做?
http://jsfiddle.net/fNPvf/16471/
function change(){
var price_start = document.getElementById('price_start').value;
for (i = 1; i <= 14; i++) {
constance_val = i*2;
price_month_+i+ = price_start*constance_val;
document.getElementById('price_month_'+i+).value = price_month_+i+;
}
}
答案 0 :(得分:3)
您不能将i+
用作变量,因为它会被解析为添加,并会导致语法错误。而你甚至不需要那部分。你为constance_val
正确地做了,但是没有必要保留price_month_+i
的值,因为你只需要在每次循环迭代中都需要它们。
这是一个固定的工作示例,略微优化:
function change(){
var price_start = document.getElementById('price_start').value;
for (var i = 1; i <= 14; i++) {
document.getElementById('price_month_'+i).value = price_start * i * 2;
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="submit" id="byBtn" value="Change" onclick="change()"/>
<input type="text" id="price_start" value="5">
<br>
<br>
<input type="text" id="price_month_1">
<br>
<br>
<input type="text" id="price_month_2">
<br>
<br>
<input type="text" id="price_month_3">
<br>
<br>
<input type="text" id="price_month_4">
<br>
<br>
<input type="text" id="price_month_5">
<br>
<br>
<input type="text" id="price_month_6">
答案 1 :(得分:0)
您的代码中存在语法错误...您应该将所有变量声明为var
function change(){
var price_start = document.getElementById('price_start').value;
for (var i = 1; i <= 14; i++) {
var constance_val = i*2;
var price_month = price_start*constance_val;
document.getElementById('price_month_'+i).value = price_month;
}
}
顺便说一句。由于您的按钮未提交任何内容,因此您应该使用<input type="button">
(或<button type="button">
)代替<input type="submit">