附加Html选择选项

时间:2016-03-30 06:03:34

标签: javascript jquery html

我使用下面的代码将blockquote转换为select元素的选项。 enter image description here

请帮助使每个选项正确。谢谢。

  

[“是↵否”,“一个↵两个↵三↵”,“人1↵人2”]

var newArr = [];        
for (var i = 0; i < arr.length; i++) {
            var data = arr[i].split('\r\n');
            newArr.push(data);    
        }

for (var j = 0; j < newArr.length; j++) {
            $('#metadata-field').append('<select name=""></select>');
            if (newArr[j].length) {
                for (var k = 0; k < newArr[j].length; k++) {
                    $('#metadata-field select').append('<option>' + newArr[j][k] + '</option>');
                }
            } else {
                alert('No data');
            }
        }

1 个答案:

答案 0 :(得分:2)

试试这个:您需要使用拆分数组元素,然后仅使用一个循环而不是嵌套循环追加每个元素。见下面的代码 -

&#13;
&#13;
var arr = ["Yes ↵No", "one ↵two ↵three ↵four", "person 1 ↵person 2"]
    
for (var i = 0; i < arr.length; i++) {
      var data = arr[i].split(' ↵');
     //create select box
     var $select = $('<select id="' + i + '"></select>');
     $('#metadata-field').append($select);
     for(var k=0;k<data.length;k++)
      {
        //append options in select box
        $select.append('<option>' + data[k] + '</option>');
      }
  }
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="metadata-field"></div>
&#13;
&#13;
&#13;