#javascript #html #jquery #dom
#javascript #HTML #jquery #dom
Вопрос:
Я выполняю работу по извлечению данных из API. Я разрабатываю свой код для выполнения нескольких запросов к API, а затем добавляю их в текущий список результатов в моем HTML. Из-за данных, возвращаемых API, нет способа получить все это за один снимок, а затем нарезать его, мне нужно получить его несколькими снимками.
Посмотрите на этот код:
function renderResults(results) {
return $('#results-section').html(genResults(results));
}
Функция renderResults()
вызывается внутри моего вызова API
.fetch(URL)
.then([code that is working properly])
.then(call renderResults() here)
Я записал в консоль результаты своего API и протестировал вызов API в Postman, поэтому я знаю, что он создан правильно — просто пытаюсь дать правильный контекст.
Для проверки, results
являются ли данные из API, results-section
как помечен контейнер результатов в моем HTML, и функция genResults(results)
создает шаблон HTML со значениями из results
вставленных в него.
При использовании .html
он перезаписывает все в разделе, указанном непосредственно перед этим. Я ищу способ добавить шаблон HTML, сгенерированный genResults(results)
любым HTML, уже находящимся в контейнере, который у меня есть ID’ results-section
d , а не заменять то, что там есть. Я пытался включить цепочку .append()
, но, похоже, не могу найти способ сделать это успешно.
Очевидное решение — заставить цикл for создавать столько подразделов результатов, сколько мне нужно, но проблема в том, что я не знаю, сколько разделов мне нужно, пока не получу результаты из API.
Есть идеи?
Обновить:
Ответ от Сувика Гоша сработал. Я пытался подключиться .append()
к .html()
, я не понимал, что это фактически заменяет его.
$( "#results-section" ).append( "Your data from the last API call" );
Комментарии:
1. Я бы посоветовал вам ознакомиться со списком методов верхнего уровня jQuery: api.jquery.com . Большинство из них не требуют пояснений. В этом случае вам нужно api.jquery.com/append
Ответ №1:
Вы могли бы использовать jQuery append .
$( "#results-section" ).append( "Your data from the last API call" );
Подробнее: https://api.jquery.com/append /