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

228
Vistas
¿Cómo puedo obtener el texto interno de los elementos después de que dom se actualice después del botón Enviar?

Estoy trabajando en la automatización de una tarea (completar un formulario y enviar datos y luego obtener el mensaje de resultado donde los datos se leen de un archivo txt línea por línea). Mientras ejecuto mi código JS a través de la consola, todo funciona bien hasta antes de hacer clic en el botón Enviar. después de hacer clic en el botón Enviar, puedo ver que el HTML se vuelve a cargar con nuevos datos y la URL se cambia de www.example.com a www.example.com/requests/12345 y luego el siguiente paso después del clic no es respetado.

Pensé que podría ser porque estaba usando:

 document.getElementByID("btn-submit").click();

y lo cambié a

 $("#btn-submit").click().trigger('change');

Pero sigue siendo el mismo problema.

Traté de usar las funciones de suspensión y setTimeout para esperar a que se cargara el nuevo HTML, pero esto no ayudó en absoluto :(

La tarea consta de pasos simples hasta que hacer clic en el botón funciona perfectamente, estoy atascado solo después del botón Enviar, ya que quiero obtener los resultados que se muestran en la página después de hacer clic en el botón Enviar.

¿Alguna idea, por favor, qué se está haciendo mal de mi parte?

Los elementos que estoy tratando de obtener están en un div que está vacío antes de que se haga clic en el botón Enviar de esta manera

 <div id="message-bar"> </div>

Después de hacer clic en el botón Enviar, se llena como se muestra a continuación (también la URL se cambia a algo enlace www.example.com/requests/12345 - por supuesto, los elementos de resultado no se mostrarán si no se hace clic en el botón:

 <div id="message-bar"> <div id="alert-success" class="alert alert-success"> <button type="button" class="close" data-dismiss="alert">×</button> <div class="text alert-text">Request approved!</div> <ul id="bullet-items"><li>Thank you</li></ul> </div> </div>

Traté de verificar si el elemento no está vacío, luego obtuve el texto interno de los elementos, pero parece que mi código se está eliminando cuando la URL de la página cambia después del botón de enviar:

 if (document.getElementById("message-bar").innerText != "") { // do something }

Muchas gracias

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Intenta usar el evento .preventDefault()

https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault ).

about 4 years ago · Juan Pablo Isaza Denunciar

0

Probar

 $("#btn-submit").click(function(event){ event.preventDefault(); })

O sin jQuery

 var btn = document.getElementById('btn-submit'); btn.addEventListener('click',function(event){ event.preventDefault(); })
about 4 years ago · Juan Pablo Isaza Denunciar

0

Por lo que entiendo, necesita el contenido no después del clic, sino después de lo que desencadena el clic. Aquí está la misma Q, respondió . Básicamente, espera a que sucedan las modificaciones y luego "lee" el contenido del elemento.

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