addEventListener 'submit' работает правильно при нажатии на кнопку, но не при нажатии enter - PullRequest
0 голосов
/ 03 апреля 2020

Я впервые использую событие отправки в форме. Вместо того, чтобы отправлять, я использовал protectDefault (), а затем добавил код для выполнения поиска. Когда я нажимаю кнопку поиска, она работает правильно, создавая div, куда он загружает результаты поиска. Когда я нажимаю ввод, он работает правильно до того момента, когда он должен добавить новый div к html.

Это функция, которая создает div

const crearDivResultados = function() {
    const divResultados = document.createElement('div');
    divResultados.setAttribute("id", "resultados");
    contenedorResultados.append(divResultados);
}

Это остальная часть кода.

const formulario = document.forms.buscador
formulario.addEventListener('submit', (event) => {
    event.preventDefault();
    let inputValor = inputBusqueda.value;
    contenedorResultados.innerHTML = '';
    crearTitulo(inputValor, contenedorResultados);
    crearDivResultados();
    let resultados = document.querySelector('#resultados');
    console.log(resultados);
    buscarGifs(inputValor).then (resp => {
        mostrarResultados(resp.data);
    })

    botonBusquedaDesplegado.style.display = 'none';
    contenedorResultados.style.display = 'block';
    resultados.style.display = 'flex';
})

Ошибка (Uncaught (в обещании) ReferenceError: resultados не определена) появляется в этой строке кода:

let resultados = document.querySelector('#resultados');

ТОЛЬКО при отправке с введите ключ. При нажатии на кнопку все работает просто отлично.

Спасибо !!!

1 Ответ

0 голосов
/ 03 апреля 2020

Тип события Отправить означает, что нажата кнопка отправки. Если вы хотите прослушать событие другого типа, используйте нажатие клавиши

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