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

356
Vistas
Detección de eventos onChange desde un CKEditor usando Jquery

Estoy trabajando con CKEditor y jQuery y me gustaría cambiar un indicador a verdadero cada vez que un usuario cambia el valor de un campo. Uno de esos campos es una instancia de CKEditor.

Todas las áreas de texto que tienen la clase "wysiwyg" se convierten a CKEditors pero de alguna manera el evento $('.wysiwyg').change() nunca se detecta. Busqué un poco en Google, pero la combinación de palabras clave parece no arrojar nada más que resultados irrelevantes (mi google-fu apesta).

Gracias por cualquier ayuda :)

Editar:

 for (var i in CKEDITOR.instances) { CKEDITOR.instances[i].on('click', function() {alert('test 1 2 3')}); }

Probé el código anterior y no funciona. No me da un error, lo que significa que encuentra los objetos CKEditor pero, por alguna razón, ¿el oyente no está conectado a él?

Además, si reemplazo el archivo adjunto del evento solo con alert(CKEDITOR.instances[i].name); alertará el nombre de mi área de texto para que sepa que no estoy tratando de adjuntar el evento de clic a nada :)

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Puede obtener un complemento (y una explicación sobre qué cosas se detectan como cambios) en esta publicación: http://alfonsoml.blogspot.com/2011/03/onchange-event-for-ckeditor.html para que pueda hacer cosas como

 for (var i in CKEDITOR.instances) { CKEDITOR.instances[i].on('change', function() {alert('test 1 2 3')}); }
over 4 years ago · Santiago Trujillo Denunciar

0

No he logrado que onchange funcione, sin embargo, onblur parece funcionar, lo que puede ser suficiente para sus necesidades

 CKEDITOR.instances['name'].on('blur', function() {alert(1);});
over 4 years ago · Santiago Trujillo Denunciar

0

Ahora hay un evento de cambio: http://docs.ckeditor.com/#!/api/CKEDITOR.editor-event-change

Lo siguiente me funciona con la versión 4.4.3. Debe controlar los cambios de código fuente y HTML.

 // Initialize the rich text editor. var bodyEditor = CKEDITOR.replace('emailTemplate_Body', { readOnly: false }); // Handle when the Source changes. bodyEditor.on('mode', function () { if (this.mode == 'source') { var editable = bodyEditor.editable(); editable.attachListener(editable, 'input', function () { alert('source changed'); }); } }); // Handle when the HTML changes. bodyEditor.on('change', function () { alert('change fired'); });
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