2014-12-07 35 views
0

我創建了一個Javascript腳本,它在我的html代碼中創建option,當我想在我的變量中放置一個循環時遇到問題。 代碼顯示此:JavaScript中的循環和變量

<select> 
    <option>undefined</option> 
</select> 

我有一個像

var event = ["Exercice1","Exercice2","Exercice3"]; 

首先,這裏的表我的變量:

iDiv = $('<select class="form-control">' + 
    event.forEach(function (eve) { 
     '<option>'+eve+'</option>' 
    }) 
    +'</select>'); 
iBr = $('</br>'); 
iDiv.attr('id', 'select' + (currentDivsCount + i)); 
iDiv.attr('name', 'select' + (currentDivsCount + i)); 
iDiv.appendTo('table'); 
iBr.appendTo('table'); 

編輯:

我創建了一個其他陣列其中包含所有事件的ID,並且我想將它們分別放入

var EventId = ["1","2","3"] 

<option name="IdEvent">

我試了一下:

iDiv = $('<select class="form-control"><option name="'+eventId.join()+'">' 
     + eventlist.join("<option>")+ '</select>'); 

但是我有這樣的:

<option name="1,2,3,4,5,6">Exercice1</option> 

謝謝您的幫助

+0

這是經典的關閉問題。請參閱[this](http://stackoverflow.com/questions/750486/javascript-closure-inside-loops-simple-practical-example)以獲取解釋。 – PeterVC 2014-12-07 20:11:51

+0

@PeterVC:這不是一個關閉問題。沒有延遲執行在引用覆蓋變量的循環中創建的函數。 – 2014-12-07 20:12:19

+0

順便說一下,你正在追加一個'
'和一個' Memo 2014-12-07 20:08:14

+0

@ user3524214:你忘了'return'語句? – 2014-12-07 20:09:14

+1

好!它的作品謝謝你! – Memo 2014-12-07 20:12:18