繁体   English   中英

addEventListener 'submit' 在单击按钮时正常工作,但在按 Enter 时不能正常工作

[英]addEventListener 'submit' working properly when clicking on button but not when pressing enter

这是我第一次在表单上使用提交事件。 我没有提交,而是使用了 preventDefault() 然后添加了一些代码来执行搜索。 当我按下搜索按钮时,它可以正常工作,创建一个加载搜索结果的 div。 当我按下回车键时,它可以正常工作,直到它必须 append 新 div 到 html。

这是创建 div 的 function

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

这是代码的rest。

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 (in promise) ReferenceError: resultados is not defined)出现在这行代码中:

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

仅在使用回车键提交时。 单击按钮时,它工作得很好。

谢谢!!!

事件类型Submit表示提交按钮被点击。 如果您想收听其他事件类型,请使用keypress

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM