将javascript数组值分配给动态创建的选择选项标记

时间:2016-08-18 07:13:56

标签: javascript jquery arrays

我想要数组中的选项值。我尝试使用下面的脚本,但它不附加数组值,而是将选项的值列为arr [++ i]。但我希望数组的值在那个位置。

<script>
$(document).ready(function(){
var counter = 1;
var arr = ['1', 'abc', '3', 'def', '4', 'ghi'];
var row = '<tr> <td> <select name="roll_no' + counter + '" id="person' +     counter + '">';
for (var i = 0, len = arr.length; i < len; i++) {    
row += '<option value="arr[i]">arr[++i]</option></td></tr>';

</script>

1 个答案:

答案 0 :(得分:1)

  1. 您需要正确转义字符串中的arr[]
  2. 在您的示例中,您在每个循环中关闭tdtr,而不是在结尾处
  3. 您没有关闭select元素
  4. &#13;
    &#13;
    var counter = 1;
    var arr = ['1', 'abc', '3', 'def', '4', 'ghi'];
    var row = '<tr><td><select name="roll_no' + counter + '" id="person' +     counter + '">';
    for (var i = 0, len = arr.length; i < len; i++) {    
        row += '<option value="' + arr[i] + '">' + arr[++i] + '</option>';
    }
    row += '</select></td></tr>';
    
    $("table").append(row);
    &#13;
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <table>
    </table>
    &#13;
    &#13;
    &#13;