如何在javascript上使用循环并使用var in循环?

时间:2015-07-01 11:40:44

标签: javascript

如何在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+; 
    }
}

2 个答案:

答案 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">