Выпадающее окно поиска с использованием вывода API - PullRequest
0 голосов
/ 16 марта 2020

Я использую API, в котором есть названия упражнений. Я хочу создать окно поиска с выпадающим списком автозаполнения (например, suggetions, которые Google дает вам до того, как вы закончите sh до ввода текста) Но я хочу использовать API в качестве результата.

Мне удалось получить показания из апи.

async function getExercises () {
    let url = 'https://wger.de/api/v2/exercise/?format=json'

    while (url) {
        const res = await fetch(url)
        const data = await res.json()

        for (const item of data.results) {
            console.log(item.name)
        }


        url = data.next

    }
}

но мое окно поиска работает, вы видите, что я делаю неправильно? это мой html:

        <input id="exercise-search" class="form-control" type="text" autocomplete="off" name="data">

        <script>
            $(document).ready(function () {
                $("input").on("mouseover", function () {
                    var a = $(this).attr('name');
                    populate(a);
                })
            })

        </script>

И это сценарий, который я использую для получения результатов из API.

getExercises().catch(e => console.error('Failed to get exercises', e))

function populate(sourceString){
    var myList = document.getElementById(sourceString);

    var sourceObject = eval(sourceString);

    var obj = new sourceObject();

    var options = '';

    for(var i=0; i <obj.list.length; i++){
        options += '<option value = "'+obj.list[i] +'">';
    }
    myList.innerHTML = options;
}

Можете ли вы указать мне правильное направление?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...