Я использую начальный поиск выпадающий список , который работает нормально. Я хочу прикрепить / добавить несколько других опций к тому же выпадающему списку, если результат поиска показывает "нет совпадений результатов".
Вот код, который я использую для его привязки:
Это список выбора
<select id="ddlselectPicker" onchange="return AppendData();" data-live-search="true"></select>
Я использую ajax для привязки этого предмета:
function AppendData()
{
var ddlCustomers = $("#ddlselectPicker");
ddlCustomers.empty().append('<option selected="selected" value="0" disabled = "disabled">Loading.....</option>');
$.ajax({
type: "Get",
url: $('#hfUrl').val(),
data: '{}',
contentType: "application/json; charset=utf-8",
dataType: "json",
async: false,
success: function (response) {
ddlCustomers.empty().append('<option selected="selected" value="0">Select</option>');
$.each(response, function () {
ddlCustomers.append($("<option></option>").val(this['Prckey']).html(this['Name']));
});
},
failure: function (response) {
alert(response.responseText);
},
error: function (response) {
alert(response.responseText);
}
});
}
Он автоматически показывает мне «результатов не найдено», если я не получаю результаты типа и поиска. Но вместо этого мне нужно показать еще 3 варианта в том же выпадающем меню, в котором должно быть написано: 1) «Другие» 2) «Частный предприниматель», 3) «Свободный лансер»
Я пытаюсь это сделать, но не могу достичь:
$(".dropdown-menu open >input").on('keydown', 'li.no-results', function () {
$("#selectpicker")
.append('<option>Others</option>')
.append('<option>Self Employed</option>')
.append('<option>Retired</option>')
.selectpicker('refresh');
//You can also call AJAX here to add the value in DB
});
Пожалуйста, посмотрите на изображение, которое я получаю после того, как не получаю результатов
Это то, что я пробовал, и которое добавляло новые опции на случай, если ничего не найдено, но теперь я не могу получить предыдущий фильтр
$(".bs-searchbox >input").keyup(function () {
debugger;
var searchTerm = "";
var ddlCustomers = $("#ddlselectPicker");
var list = $(".dropdown-menu .inner li:eq(0)").text();
debugger;
if (list.indexOf("No results matched") != -1) {
ddlCustomers.empty();
ddlCustomers.append('<option value="Others">Others</option>');
ddlCustomers.append('<option value="Self Employed">Self Employed</option>');
ddlCustomers.append('<option value="Retired">Retired</option>');
ddlCustomers.selectpicker('refresh');
}
else {
}
});