使用jQuery向下拉列表中添加选项的最简单方法是什么?
这行吗?
$("#mySelect").append('<option value=1>My option</option>');
使用jQuery向下拉列表中添加选项的最简单方法是什么?
这行吗?
$("#mySelect").append('<option value=1>My option</option>');
当前回答
如果要在选择中的特定索引处插入新选项:
$("#my_select option").eq(2).before($('<option>', {
value: 'New Item',
text: 'New Item'
}));
这将在选择中插入“新项目”作为第三个项目。
其他回答
为了提高性能,您应该尝试只更改DOM一次,如果要添加许多选项,则更应该如此。
var html = '';
for (var i = 0, len = data.length; i < len; ++i) {
html.join('<option value="' + data[i]['value'] + '">' + data[i]['label'] + '</option>');
}
$('#select').append(html);
就我个人而言,我更喜欢用这种语法附加选项:
$('#mySelect').append($('<option>', {
value: 1,
text: 'My option'
}));
如果要从项目集合中添加选项,可以执行以下操作:
$.each(items, function (i, item) {
$('#mySelect').append($('<option>', {
value: item.value,
text : item.text
}));
});
根据dule对附加一系列项目的回答。。。也会创造奇迹:
let cities={'ny':'纽约','d':'伦敦','b':'迪拜','pk':'北京','k':'东京','nd':'新德里'};for(让c在城市中){$(“#selectCity”).append($(“<option>”,{value:c,text:city[c]})}<script src=“https://ajax.googleapis.com/ajax/libs/jquery/1.4.0/jquery.min.js“></script><select id=“selectCity”></select>
对象值和索引都指定给选项。这个解决方案甚至可以在旧的jQuery(v1.4)中使用!
为什么不简单呢?
$('<option/>')
.val(optionVal)
.text('some option')
.appendTo('#mySelect')
此处测试:
for(设i=0;i<10;i++){$('<option/>').val(i).text('option'+i).appendTo('#mySelect')}<script src=“https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js“></script><select id=“mySelect”></select>
这很好。
如果添加多个选项元素,我建议执行一次追加,而不是对每个元素执行追加。