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

623
Vistas
el evento de clic no funciona dentro de div cuando se usa v-html - vue js

Tengo un div contenteditable y agrego html sin procesar que incluye un evento de clic usando v-html . Pero el evento de clic no funciona en este caso. La inspección de elementos muestra que hay un evento de clic en el div, pero aún así no funcionará.

Si codifico cualquier otro div con evento de clic dentro de div contenteditable , entonces está funcionando. No se si lo estoy haciendo bien. :

 <div id="div_textarea2" v-html="temp_testing_div2" contenteditable="true"></div> data () { return { temp_testing_div2: `<div @click="ClickLine">Click this</div>`, } } ClickLine(){ alert("Clicked"); }
over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

@HermantSah v-html no vinculará ninguna directiva de Vue, como los eventos @click . Ver documentos aquí .

Una solución alternativa podría ser tener el evento @click en el div principal y en la cadena de su plantilla darle al elemento algo distinguible, como una identificación.
Luego podría interceptar el evento y verificar en qué elemento se hizo clic. Si el elemento coincide con el de la cadena de su plantilla, haga algo, etc. Un ejemplo aproximado a continuación.

 <div id="div_textarea2" v-html="temp_testing_div2" @click="handleLineClick" contenteditable="true"></div> ... // in your script section data() { return { temp_testing_div2: `<div id="temp_testing_div2">Click this</div>`, } }, methods: { handleLineClick(e) { let clickedElId = e.target.id if (clickedElId === 'temp_testing_div2') { console.log("temp_testing_div2 clicked!", e) } else { console.log('another element was clicked') } } }

Todo se siente un poco desordenado, aunque en mi opinión. Puede haber una manera más fácil de lograr lo que deseas.

over 4 years ago · Santiago Trujillo 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