У меня есть веб -форма, которую я создаю, которая, помимо прочего, имеет поля, которые относятся к базе данных в другом месте. Когда пользователь вводит в этих полях, после того, как он выработал, поиск проводится с помощью вызова API, а возвращаемые данные JSON анализируются в список предложений. < /P>
let timeout;
async function SearchEmployees(elementId, suggestionsId) {
var searchBox = document.getElementById(elementId);
var suggestionsList = document.getElementById(suggestionsId);
suggestionsList.innerHTML = '';
let loadingOption = new Option("Loading1...", "Loading2...");
suggestionsList.appendChild(loadingOption);
clearTimeout(timeout);
timeout = setTimeout(async () => {
console.log('searching...');
const response = await fetch('/API_CALL_REDACTED?searchString=' + searchBox.value, {
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
});
const json = await response.json();
suggestionsList.innerHTML = '';
for (let i = 0; i < json.length; i++) {
suggestionsList.appendChild(new Option(json.displayName, json.uid));
}
}, 1000);
}
< /code>
По какой -то причине, когда я пытаюсь отобразить опцию «Загрузка ...» в списке предложений (в настоящее время установленные на разные дисплеи и значения для целей отладки), ничего не появляется, но Окончательный результат поиска делает. Я не до конца понимаю, что здесь идет не так, но я подозреваю, что это либо из -за проблемы браузера, либо (более вероятно) асинхронной природы кода. < /P>
Вот код, который генерирует Метка и поле поиска: < /p>
@(Html.LabelFor(c => c.BackingObject.BackingField, "Label:"))
@(Html.TextBoxFor(c => c.BackingObject.BackingField, new { @id = "personBackingField", @oninput = "SearchEmployees('personBackingField', 'fieldSuggestions')", @list = "fieldSuggestions" }))
< /code>
Когда я останавливаю код в отладчике, это список данных, но для пользователя ничего не отображается. < /p>
Loading1...
Подробнее здесь: https://stackoverflow.com/questions/794 ... n-list-but
Я не могу получить опцию «Загрузка ...» появиться в моем списке предложений поиска, но конечные результаты отображают до ⇐ Javascript
Форум по Javascript
1739996336
Anonymous
У меня есть веб -форма, которую я создаю, которая, помимо прочего, имеет поля, которые относятся к базе данных в другом месте. Когда пользователь вводит в этих полях, после того, как он выработал, поиск проводится с помощью вызова API, а возвращаемые данные JSON анализируются в список предложений. < /P>
let timeout;
async function SearchEmployees(elementId, suggestionsId) {
var searchBox = document.getElementById(elementId);
var suggestionsList = document.getElementById(suggestionsId);
suggestionsList.innerHTML = '';
let loadingOption = new Option("Loading1...", "Loading2...");
suggestionsList.appendChild(loadingOption);
clearTimeout(timeout);
timeout = setTimeout(async () => {
console.log('searching...');
const response = await fetch('/API_CALL_REDACTED?searchString=' + searchBox.value, {
method: 'GET',
headers: {
'Content-Type': 'application/json'
}
});
const json = await response.json();
suggestionsList.innerHTML = '';
for (let i = 0; i < json.length; i++) {
suggestionsList.appendChild(new Option(json[i].displayName, json[i].uid));
}
}, 1000);
}
< /code>
По какой -то причине, когда я пытаюсь отобразить опцию «Загрузка ...» в списке предложений (в настоящее время установленные на разные дисплеи и значения для целей отладки), ничего не появляется, но Окончательный результат поиска делает. Я не до конца понимаю, что здесь идет не так, но я подозреваю, что это либо из -за проблемы браузера, либо (более вероятно) асинхронной природы кода. < /P>
Вот код, который генерирует Метка и поле поиска: < /p>
@(Html.LabelFor(c => c.BackingObject.BackingField, "Label:"))
@(Html.TextBoxFor(c => c.BackingObject.BackingField, new { @id = "personBackingField", @oninput = "SearchEmployees('personBackingField', 'fieldSuggestions')", @list = "fieldSuggestions" }))
< /code>
Когда я останавливаю код в отладчике, это список данных, но для пользователя ничего не отображается. < /p>
Loading1...
Подробнее здесь: [url]https://stackoverflow.com/questions/79452644/i-cant-get-a-loading-option-appear-for-my-search-box-suggestion-list-but[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия