Issue #1669💬 RespondidoAbierto el 18 de diciembre de 2018por SeongwoonHongReacciones 0

El modal de enlace personalizado no actualiza el texto actual, sino que añade otro texto con enlace

Respuesta rápidapor SeongwoonHong

Me gustaría añadir uno más, dentro del handler onclick para btnLink, '<a class="link" href="${inputEl.value}">${rte.selection()}</a>' devuelve '<a class="link" href="..."></a>' el texto interno está vacío.. No tengo ni idea de cómo abordar esto

Lee la respuesta completa abajo ↓

Pregunta

Hola Artur,

Estoy intentando tener un modal personalizado al pulsar el botón de enlace en RTE. Pero no convierte el texto seleccionado a enlace, sino que añade otro texto con enlace.

      this.editor.RichTextEditor.add('custom-link', {
        icono: '<img src="assets/images/link.png" />',
        atributos: {título: 'Enlace', clase: 'gjs-rte-acción'},
        Resultado: RTE => {
          Define qué está ocurriendo dentro de modal
          const customLinkContainer = document.createElement('div');
          const btnLink = document.createElement('button');
          const linkInputEl = document.createElement('input');
          linkInputEl.setAttribute('id', 'custom-link-input');
          linkInputEl.value = '<a class="link" href="asdf">${rte.selection()}</a>'
          btnLink.innerHTML = 'aa';
          btnLink.onclick = () => {
            const inputEl = document.getElementById('custom-link-input');
            const selectedEl = this.rte.selection();
            rte.insertHTML('<a class="link" href="${inputEl.value}">${rte.selection()}</a>');
            modal.close();
          };
          customLinkContainer.appendChild(linkInputEl);
          customLinkContainer.appendChild(btnLink);

configurar modal
          modal.setTitle(t('Enlace'));
          modal.setContent(customLinkContainer);
          modal.open();
        }
      });

Gracias...

Respuestas (3)

SeongwoonHong18 de diciembre de 2018

Me gustaría añadir uno más, dentro del handler onclick para btnLink, '<a class="link" href="${inputEl.value}">${rte.selection()}</a>' devuelve '<a class="link" href="..."></a>' el texto interno está vacío.. No tengo ni idea de cómo abordar esto

lock[bot]20 de diciembre de 2019

Este hilo se ha bloqueado automáticamente porque no ha habido actividad reciente desde que se cerró. Por favor, abre un nuevo problema para bugs relacionados.

Preguntas y respuestas relacionadas

Continúa investigando con debates sobre temas similares.

Plugins de pago que cumplen con este problema

Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.

Ver todos los plugins

Cargando recomendaciones de plugins de pago...

Opción gratuita

Consulta los plugins de código abierto de GrapesJS en GitHub O haz una búsqueda rápida en nuestro catálogo gratuito.

Explora plugins gratuitos →
Opción premium

Los plugins premium incluyen soporte, actualizaciones regulares y funciones listas para producción — ahorrando días de trabajo de integración.

Explora plugins premium →

Tutoriales relacionados

Guías detalladas sobre el mismo tema.

Todos los tutoriales →

Explorar categorías de plugins

Ve directamente a las páginas de categorías de plugins en el marketplace.