2017-05-15 13 views
0

2つのフィールドのプレフィックスと値があります。私が接頭辞をAとし、値を10とすると、結果がA1からA10になるはずです。私のコードではA1からA10の結果が得られますが、始めにそれも値を付加します。それはA1だけでなく10A1を与えることを意味します。ありがとうございました。文法には申し訳ありません。JavaScriptのインクリメント番号

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>

答えて

1

あなたは既に値が前の値と連結されるので、値を持つ既存の変数valを使用しています。

''

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; 
 
}
<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>

+1

これは機能します。どうもありがとうございます。 – pkm

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>

0

新しい変数tempを宣言し、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; 
} 
関連する問題