2012-12-05 46 views
-5

如何用循環生成15個輸入, 每個輸入都有自己的「id」並且只運行一次?如何使用循環生成15個輸入並僅運行一次?

<input type="button" onclick="generate()"> 
<script> 
function generate(){ 
for(var i=0; i < 15; i++) { 
} 
} 

+1

咦???請再試一次...不明白你 – ose

+0

你想輸入什麼輸入框?輸入數據??澄清它多一點..雖然你的For循環是錯誤的 - 這樣做 - 爲(var i = 0;我<15; i ++){...} – swapnesh

+0

對不起,但在多個這個問題只是表明零努力。 –

回答

3

那是你在找什麼?

for(var i=0 ; i<15;i++) 
{ 
    var input = document.createElement('input'); 
    input .setAttribute('id',"input"+i); 
    document.getElementById("formName").appendChild(input); 
} 
+0

更改爲(var i = 0; i <15; i ++ {TO for(var i = 0; i <15; i ++){ – swapnesh

+1

但它不會運行一次 – Kakitori

+0

您是什麼意思只運行一次? – Dharman

1
<div id='elements'></div> 
<script> 
for(var i=0;i<15;i++){ 
document.getElementById('elements').innerHTML=document.getElementById('elements').innerHTML+"<input type='text' id='type"+i+"'>"; 
} 
</script> 

給這個ID和你想要的輸入類型。

+1

最好是操作DOM而不是附加原始HTML,您不必擔心轉義,也不會丟失任何現有的事件處理程序。 – MrCode

2

如果您有與myForm ID的形式:

window.onload = function(){ 

    var form = document.getElementById("myForm"); 

    for(var i=0; i<15; i++) 
    { 
     var input = document.createElement('input'); 
     input.type = 'text'; 
     input.name = 'myInput_' + i; 
     input.id = 'myInput_' + i; 
     form.appendChild(input); 
    } 

}; 

這會給你每15個文本輸入與格式myInput_i唯一的名稱和ID,其中i是從0 -14。

0

該函數採用你想放置字段的div的ID,第二個參數是你想要的字段的數量。

你可以這樣做,但如果你的項目將使用大多數JavaScript的DOM操作,你應該也許使用jQuery。

<!DOCTYPE html> 
<html lang="en"> 
    <head> 

    </head> 

    <body> 
     <form> 
      <div id="divForPlacement"> 

      </div> 
     </form> 

     <script> 
      function putInputFields(div, number) { 
       var oDivForPlacement = document.getElementById(div); 
       if(oDivForPlacement === undefined || oDivForPlacement === null) return; 
       var currentField = null; 

       for(i = 0; i < number; i++) { 
        currentField = document.createElement("input"); 
        currentField.setAttribute("id", div + "-field" + i); 
        currentField.setAttribute("type", "text"); 
        oDivForPlacement.appendChild(currentField); 
       } 

      } 
      putInputFields("divForPlacement", 15); 
     </script> 
    </body> 
</html> 
相關問題