2016-02-11 36 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); 
    }); 

不過這通常是這樣做,除非你需要他們動態生成的傻事。