从众多选项中选择

时间:2016-02-11 06:13:49

标签: javascript html

我想在html中创建一个select字段。此字段的值将从1到27进行选择。所以我想尝试一些排序方法,而不是手动输入27个值。有可能借助java脚本或其他东西吗?我不是前端技术的专家,所以请慷慨。

2 个答案:

答案 0 :(得分:2)

我不确定您是否尝试在下拉列表中列出1到27或尝试简单列出27个项目。在任何一种情况下,这些都是。这是使用基本的JavaScript。

演示:https://jsfiddle.net/0zy7655z/

列出27次

var vals = ['item1','item2','item3','etc.'];
var sel1 = document.getElementById('list1');
vals.forEach(function(val,ind) {
  var opt = document.createElement('option');
  opt.text = val;
  opt.value = ind;
  sel1.appendChild(opt);
});

列出1至27

var sel2 = document.getElementById('list2');
for (var i = 1; i <= 27; i++) {
  var opt = document.createElement('option');
  opt.text = i;
  opt.value = i;
  sel2.appendChild(opt);
}

答案 1 :(得分:1)

好吧,如果你想......你可以。

HTML

<select id="mySelect" name="mySelect"></select>

Pure Javascript:

var values = ['something','something else','some other thing']; var mySelect = document.getElementById('mySelect');

for (var i=values.length;i--;){
  var optionElem = document.createElement('option');
  optionElem.setAttribute('value', value[i]);
  var optionText = document.createTextNode(value[i]);
  optionElem.appendChild(optionTect);
  mySelect.appendChild(optionElem);
}

或者你可以使用jQuery:

var values = ['something', 'something else', 'some other thing'];

    $.each(values, function(idx, value) {
        var optionElem = '<option value="' + value + '">' + value + '</option>';
        $('#mySelect').append(optionElem);
    });

除非你需要动态生成它们,否则这通常是一件愚蠢的事情。