目前,select2允许我在使用搜索词过滤列表后一次只选择一个选项。
Ex:假设该列表包含所有美国州,我的搜索字词为“新” 我想要的是能够根据搜索词选择所有搜索结果,在这种情况下纽约,新墨西哥州,新罕布什尔州,新泽西州,我需要一次选择所有搜索结果。
有办法吗?
答案 0 :(得分:0)
完成了一项工作,现在正在开展工作
必须使用搜索词值设置占位符,然后使用javascript字符串包括函数来对所有元素进行另一次搜索以获取这些元素。
function onSelectAll(clicked_id) {
var parentid = $('#'+clicked_id).parent().attr("id");
var search = $('#'+parentid+' .select2-search__field').attr("placeholder");
var elements = document.getElementById(clicked_id).options;
if(search){
for(var i = 0; i < elements.length; i++){
if(elements[i].value.includes(search)) {
elements[i].selected = true;
}
}
}
else {
for(var i = 0; i < elements.length; i++){
elements[i].selected = true;
}
}
var vv = $('#'+clicked_id).val();
$('#'+clicked_id).val(vv).trigger('change');
}