2016-02-11 34 views
1

我想在html中创建一个选择字段。该字段的值将从1到27进行选择。所以我想尝试一些排序方法,而不是手动输入27个值。是否有可能在Java脚本的帮助下?我不是前端技术方面的专家,请大家慷慨解囊。 从大量选项中选择

+0

我不会用JavaScript做到这一点。您必须以任何方式键入值。 –

+0

您是否试图在下拉列表中列出数字1至27? – Err

回答

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); 
} 
+0

我比较喜欢纯粹的JS。 +1 – Vertical3

1

嗯,你可以,如果你想...

的HTML

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

纯JavaScript:

VAR值= [ '东西', '别的东西', '别的东西']; 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); 
    }); 

不过这通常是这样做,除非你需要他们动态生成的傻事。