JavaScript中的增量数

时间:2017-05-15 09:14:30

标签: javascript html

我有2个字段的前缀和值。假设当我将前缀作为A并且值为10时,它应该给我结果A1到A10。在我的代码中,它给我结果A1到A10,但在开始时它也附加值。这意味着它给出10A1而不是A1。谢谢。对不起语法。

function saveForm(){
    var val = document.getElementById("val").value;
    var prefix = document.getElementById("prefix").value;
    for(i=1; i<=parseInt(val); i++){
     val += prefix + i + "<br>"; 
    }
    document.getElementById("demo").innerHTML = val;
 }
<label>Prefix</label>
<input id="prefix" name="prefix"  type="text" /><label>Value</label><input id="val" type="text" />
<button type="button"  onClick="saveForm()" />Save</button>

<p id="demo"></p>

3 个答案:

答案 0 :(得分:1)

您正在使用已有值的现有变量val,因此值将与之前的值连接。

使用已初始化为''

的其他变量

&#13;
&#13;
function saveForm() {
  var val = document.getElementById("val").value;
  var prefix = document.getElementById("prefix").value;
  var value = '';
  for (var i = 1; i <= parseInt(val); i++) { //declare i using keyword "var" or else it will be global
    value += prefix + i + "<br>";
  }
  document.getElementById("demo").innerHTML = value;
}
&#13;
<label>Prefix</label><input id="prefix" name="prefix" type="text" /><label>Value</label><input id="val" type="text" />
<button type="button" onClick="saveForm()">Save</button>
<p id="demo"></p>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

立即尝试。你只需要改变变量名。

function saveForm() {
  resval  = '';
  var myval = document.getElementById("val").value;
  var prefix = document.getElementById("prefix").value;
  for (i = 1; i <= parseInt(myval); i++) {
    resval += prefix + i + "<br>";
  }
  document.getElementById("demo").innerHTML = resval;
}
<body>

  <label>Prefix</label><input id="prefix" name="prefix" type="text" /><label>Value</label><input id="val" type="text" />

  <button type="button" onClick="saveForm()" />Save</button>

  <p id="demo"></p>

</body>

答案 2 :(得分:0)

声明一个新变量temp,在for循环中分配然后使用innerHTML显示。

function saveForm(){
   var val = document.getElementById("val").value;
   var prefix = document.getElementById("prefix").value;
   var temp = "";
   for(i=1; i<=parseInt(val); i++){
      temp += prefix + i + "<br>";
   }
   document.getElementById("demo").innerHTML = temp;
}