For Loop功能无法将<option>附加到<select>标记

时间:2017-03-09 05:54:36

标签: jquery for-loop

我不明白为什么注释掉的代码可以将选项附加到select标签,但是当我尝试创建一个数组并使用for循环将数组的所有值添加为选项时,代码不起作用。如果我遗漏了一些简单的话,我道歉。先感谢您。 // var testing =“测试值” //$('#test').append('<option>'+testing+'</option>'); var testArray = ['test1','test2','test3']; for(var i = 0,i&lt; testArray.length,i ++){   var value = testArray [i];   $( '#试验')附加( '&LT;选项&GT;' +值+ '&LT; /选项&GT;')。   } &lt; script src ='https://code.jquery.com/jquery-3.1.0.min.js'>&lt; / script&gt; &lt; select id =“test”&gt;   &LT;选项&GT; - &LT; /选项&GT; &LT; /选择&GT;

2 个答案:

答案 0 :(得分:1)

问题是,。将变量定义在循环外并添加标记一次。

 var testArray = ['test1', 'test2', 'test3'];
 var html = '';
 for (var i = 0; i < testArray.length; i++) {
   var value = testArray[i];
   html += '<option>' + value + '</option>';
 }
 $('#test').append(html);
<script src='https://code.jquery.com/jquery-3.1.0.min.js'></script>
<select id="test">
  <option>--</option>
</select>

答案 1 :(得分:0)

试试这个

$.each(testArray, function(key, value) {   
 $('#test')
      .append($('<option>', { value : key })
      .text(value)); 
});