使用jQuery向下拉列表中添加选项的最简单方法是什么?
这行吗?
$("#mySelect").append('<option value=1>My option</option>');
使用jQuery向下拉列表中添加选项的最简单方法是什么?
这行吗?
$("#mySelect").append('<option value=1>My option</option>');
当前回答
有两种方法。您可以使用这两种方法中的任何一种。
第一:
$('#waterTransportationFrom').append('<option value="select" selected="selected">Select From Dropdown List</option>');
第二:
$.each(dataCollecton, function(val, text) {
options.append($('<option></option>').val(text.route).html(text.route));
});
其他回答
这只是最佳性能的快速要点
总是当你处理很多选项时,建立一个大字符串,然后将其添加到“select”中以获得最佳性能
f.g.
var$mySelect=$('#mySelect');var str=“”;
$.each(items, function (i, item) {
// IMPORTANT: no selectors inside the loop (for the best performance)
str += "<option value='" + item.value + "'> " + item.text + "</option>";
});
// you built a big string
$mySelect.html(str); // <-- here you add the big string with a lot of options into the selector.
$mySelect.multiSelect('refresh');
甚至更快
var str = "";
for(var i; i = 0; i < arr.length; i++){
str += "<option value='" + item[i].value + "'> " + item[i].text + "</option>";
}
$mySelect.html(str);
$mySelect.multiSelect('refresh');
就我个人而言,我更喜欢用这种语法附加选项:
$('#mySelect').append($('<option>', {
value: 1,
text: 'My option'
}));
如果要从项目集合中添加选项,可以执行以下操作:
$.each(items, function (i, item) {
$('#mySelect').append($('<option>', {
value: item.value,
text : item.text
}));
});
$('#select_id').append($('<option>',{ value: v, text: t }));
为什么不简单呢?
$('<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>
如果有人来这里寻找添加数据财产选项的方法
使用属性
var option = $('<option>', { value: 'the_value', text: 'some text' }).attr('family', model.family);
使用数据-版本1.2.3
var option = $('<option>', { value: 'the_value', text: 'some text' }).data('misc', 'misc-value);