我正在使用selectize js来填充国家/地区数据(来自数据库)作为下拉列表。此下拉列表在onChange
,onload
上正常工作。
我正在尝试在以下情况下添加一个下拉选项:用户查询“我们”,“美国”或“美国”。在这种情况下,它应该从数据库返回“美国”作为国家。
当用户键入“ us”或“ usa”,“ united”但未自动填充时,我将返回一个带有“ united States”的json对象:
country_selector = $('#data_country').selectize({
valueField: 'id',
labelField: 'name',
searchField: ['name'],
options: [],
create: false,
maxItems: 1,
openOnFocus: true,
closeAfterSelect: false,
preload: true,
highlight: false,
render: {
option: function (item, escape) {
return '<div class="game-section--country-list--selected-country" data-country = "' + item.id + '" id = "game-selected-country"><span class = "game-section--country-list--name" > ' + item.name + '</span>' + '</div>';
},
item: function (item, escape) {
return '<div class="game-section--country-list--selected-country" data-country = "' + item.id + '" id = "game-selected-country"><span class = "game-section--country-list--name" > ' + item.name + '</span>' + '</div>';
}
},
load: function (query, callback) {
var selectize = this;
var form_data = {
'q': query,
'action': 'countries'
};
$.ajax({
url: game_section_ajax_object.ajaxurl, // AJAX handler,
type: 'POST',
dataType: 'json',
data: form_data,
error: function () {
callback();
},
success: function (res) {
/*here i m adding new element to json on condtion when q = 'us or usa or united*/
res.countries.push(
{ id: "US", name: "United States" }
);
callback(res.countries);
/*but it doesnt append united states in dropdown on autocompelte*/
}
}
});
},
)}
我希望当用户键入以下关键字“我们”,“美国”,“美国”中的任何一个时,下拉选项将显示“美国”。