我想在html中创建一个select字段。此字段的值将从1到27进行选择。所以我想尝试一些排序方法,而不是手动输入27个值。有可能借助java脚本或其他东西吗?我不是前端技术的专家,所以请慷慨。
答案 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);
});
除非你需要动态生成它们,否则这通常是一件愚蠢的事情。