Автозаполнение из jQuery возвращает значения Label, я хотел бы возвращать значения
У меня проблема с тем, что обертка автозаполнения заполняется значениями, а не метками
$(document).ready(function() {
$('#id_name').autocomplete({
source: function(request, response) {
$.ajax({
url: "{% url 'proiecte:autocomplete' %}",
dataType: "json",
data: {
term: request.term
},
success: function(data) {
response($.map(data.name, function(value, key) {
return {
value: data.name[key],
label: data.id[key],
}
}));
}
});
},
})
});
Я добавил изображение для примера, автозаполнение должно показывать текстовые значения, а не числа:
Когда вы вводите текст в текстовое поле, оно показывает id, потому что вы присвоили его лейблу. присвоили его в вашей метке.
Попробуйте поменять местами присвоение значения и метки с приведенным ниже вариантом.
success: function(data) {
response($.map(data.name, function(value, key) {
return {
value: data.id[key],
label: data.name[key],
}
}));
}