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

371
Vistas
Ocultar botón si se encuentra texto en la página, pero no si este texto también se encuentra en la página

Tengo este código de trabajo que oculta el botón "siguiente" en mi pago si los clientes tienen 'sesión 1 de 5', '2 de 5', '3 de 5' o '4 de 5' en su cesta. Porque necesito que agreguen las 5 sesiones a su cesta antes de que puedan hacer clic en "siguiente"

¿Cómo modifico el código para que también verifique si la página contiene 'sesión 5 de 5' y, por lo tanto, no agregue la clase "hideElement"?

¿También es posible hacer que este código se ejecute cada dos segundos de forma continua mientras navegan por un sistema de pago?

 var itemCode = ["session 1 of 5", "session 2 of 5", "session 3 of 5", "session 4 of 5"]; var contains = itemCode.some(function(code) { return $(".bookly-cart-step").text().indexOf(code) >= 0; }); if (contains) { $(".bookly-next-step").addClass("hideElement"); }
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Por lo general, esto es algo que integraría directamente con la lógica de la cesta, pero parece que está usando un complemento, por lo que supongo que esto no es posible en su caso específico, de ahí su pregunta.

El siguiente fragmento le dará una idea de cómo puede verificar que todas las sesiones estén presentes utilizando el método de every matriz y deshabilitar/habilitar el botón de envío en consecuencia (comparando con el contenido de texto de manera similar a su secuencia de comandos original).

Aunque no recomendaría verificar con el contenido del texto si puede verificar directamente con la cesta.

 const sessions = ['session 1', 'session 2', 'session 3'] const searchTarget = document.querySelector('.target'); const submitButton = document.querySelector('.submit') if (searchTarget.textContent.includes('session')) { if (!sessions.every((session) => searchTarget.textContent.includes(session))) { submitButton.setAttribute("disabled", "") } else { submitButton.removeAttribute('disabled') } }
 <div class="target">session 1</div> <button class="submit">test</button>

En términos de agregar una nueva verificación, sería mejor simplemente llamar a la función de verificación cuando un usuario completa una acción relacionada con el carrito, podría usar un detector de eventos para esto.

Si esto no es posible, puede usar el observador de mutaciones para verificar los cambios de texto o usar setInterval como último recurso, ya que esto podría comenzar a afectar el rendimiento.

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