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

168
Vistas
El valor de javascript personalizado no se actualiza en Google Tag Manager

Creé una variable de JavaScript personalizada en GTM para extraer el título del formulario en un formulario emergente.

Estoy usando visibilidad de elementos y selector de CSS para identificar los formularios.

Esta es una página con múltiples formularios, así que en lugar de tener múltiples etiquetas y disparadores, quiero hacerlo en uno y cambiar dinámicamente.

Entonces el CJS es:

 function() { return document.querySelector ('div._form-title').innerText }

Y funciona perfectamente cuando lo pruebo en la consola, pero cuando lo pruebo en el modo de vista previa de Google Tag Manager, el primero funciona bien, pero luego, si abro cualquier otro formulario, el valor anterior se muestra nuevamente en la nueva etiqueta.

Es como si no pudiera obtener el más reciente.

La etiqueta se activa en el elemento visible y observa los cambios de DOM, por lo que habría pensado que la variable CJS se ejecutaría nuevamente para el valor actualizado, pero no es así.

¿Algunas ideas?

De lo contrario, en las variables que aparecen automáticamente, cuando se carga la ventana emergente, "Click text" aparece como el texto completo del formulario.

Entonces, una forma alternativa de hacerlo podría ser devolver el texto del clic, pero para acortarlo, ¿sabe cómo devolver, por ejemplo, solo los primeros 25 caracteres de la variable "Texto del clic"?

Gracias por adelantado :)

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

0

En una página con múltiples formularios (o múltiples elementos que coinciden con el selector), esto siempre devolverá la primera coincidencia. Así es como funciona document.querySelector, no algo específico de GTM (tampoco use HTML personalizado para obtener nodos DOM, use el tipo de variable DOM incorporado; esto evita el uso de eval, que es bueno para la seguridad y el rendimiento y permite para obtener políticas de seguridad de contenido más estrictas si eso es un problema para usted).

Si dice que usar texto de clic es una alternativa viable, no necesita acortarlo (podría hacerlo en una variable Javascript personalizada que devuelva una subcadena de la variable {{Texto de clic}}, pero dado que no tiene que escribir haga clic en el texto en cualquier lugar que parezca innecesario), simplemente use la condición starts with en su filtro de activación y haga coincidir los primeros 25 caracteres:

filtro de activación con comienza con condición

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