Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

163
Vistas
¿Cómo verificar si la cadena de entrada consiste en una palabra que coincide con la información de la API en Javascript?

Resultado previsto: el usuario ingresa cualquier carácter desde el teclado. Luego se usarán para verificar si la cadena ingresada es una palabra de la API de diccionario. Si coinciden entre sí, la cadena estará en el elemento <p> . De lo contrario, la cadena ingresada pasará por anotherFunction() .

Preguntas:

  1. ¿Es posible mediante keyboard.event , pero no en <input> / <textarea> , que fetchApi() pueda buscar una palabra real de una cadena, en lugar de cada carácter ingresado? (Como si no quisiera eso solo hasta que el usuario escriba la palabra y presione Enter , luego la API comenzará a funcionar)
  2. Si es así, ¿qué puedo cambiar en el código para obtener el resultado previsto anteriormente?

Gracias una y otra vez. ¡Muchas gracias!

 var characters = ''; var text = document.getElementById("text"); var word = result[arg0].word; document.addEventListener('keydown', function(input) { if (input.key >= 'a' && input.key <= 'z') { fetchApi(input.key); } }); function fetchApi(word) { let url = `https://api.dictionaryapi.dev/api/v2/entries/en/${word}`; fetch(url).then(res => res.json()).then(result => data(result, word)); } function data(result, word) { if (input.key == word) { characters += input.key; text.innerHTML = characters; } else { text.innerHTML = anotherFunction(); } }
 <p id="text"></p>
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Espero haber entendido bien tu pregunta, pero creo que lo que quieres es:

  1. Solo escuche los eventos clave en el campo de entrada en lugar de todo el documento. Para esto, simplemente agregue el detector de eventos al <input> o <textarea> deseado en lugar del document . Explicado aquí
 text.addEventListener('keydown', function(input) { if (input.key >= 'a' && input.key <= 'z') { fetchApi(input.key); } });
  1. También puede escuchar la tecla Enter . Para esto, puede simplemente obtener el valor de <input> y enviarlo directamente a la API ( text.value ). O si desea filtrar los caracteres antes (y cambiar la menor cantidad de código posible de su solución existente), también puede enviarle su cadena de characters . (Como el código de abajo)
 let inputWord = "" text.addEventListener('keydown', function(input) { if (input.key >= 'a' && input.key <= 'z') { inputWord += input.key; // add each character to string if it's between az } else if (input.key === "Enter") { // on enter fetch the entire inputWord fetchApi(inputWord); inputWord = "" // clear inputWord after Enter (but not in <input>) } });
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda