Contenido

Probando una corrección en los comentarios con Ajax

31 Ago

+ 8

Temporalmente desactivado

Mucha gente se me ha quejado de un problema que tengo en el sistema de comentarios con los tags <code></code>. El problema radíca en que nosotros estamos enviando código sin tratar al formulario de envio mediante Ajax, y lo está tratando antes de guardar los datos. De forma que a la página me llega el resultado del código del comentario y no el comentario en si.

Creo que no es un problema que me pase a mi solamente, creo que debe pasar en todas las web’s con insercción de comentarios con ajax.

Para ello he hecho una pequeña función en JS aprovechando las ventajas que nos aportan las expresiones regulares.

function encodeText (texto) {
        var regExp = /<code>(.|\n)*<\/code>/
        if (regExp.test(texto)) {
            return texto.replace(/<code>((.|\n)*)<\/code>/g,"[!]$1[¡]").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\[!\]((.|\n)*)\[¡\]/g,"<code>$1</code>");
        }
        return texto;
    } 

De esta forma convertimos los caracteres < y > en su correspondiente valor HTML que encontremos dentro de los tags <code></code>.

Esto <strong>no</strong> se tratará y lo reconocerá como un HTML normal
<code> pero esto <strong>si</strong> que se tratará y podremos ver los tags</code>

Obteniendo el siguiente resultado:

Esto no se tratará y lo reconocerá como un HTML normal
  pero esto <strong>si</strong> que se tratará y podremos ver los tags

Aún no lo he podido probar mucho, pero si notais algo raro por favor avisar.

<pre>function probando(x) {
if(x.length > 0 && x.length < 400) {
return "Hola Mundo";
}
else {
return false,
}
}
document.write(probando("uno dos tres");
</pre>

Sé que soy una molestia con estas cosas siempre, pero dónde tengo que poner esto?

Hola:
Tal y como indican las reglas del blogday, que se celebra hoy, te informo que tu bitácora ha sido una de mis 5 elegidas, tal y como podrá ver
aqui:
http://www.camyna.com/wordpress/?p=3D1287

Saludos

#2 No te recomiendo usarlo de momento, aún tengo problemas.

#3 Gracias Gabriel :D
A ver si alguien me puede iluminar, tengo problemas con los saltos de líneas, y para solucionarlo uso la función escape de javascript, pero esto escapa cualquier carácter “extraño”, los acentos incluidos….

¿Alguna idea?

Tú eres el que sabe, así que lo que digas…

Gracias por la mención :D
También tu blog es de mis 5 elegidos.

Comentar

#

Me reservo el derecho de eliminar y/o modificar los comentarios que contengan lenguaje inapropiado, spam u otras conductas no apropiadas en una comunidad civilizada. Si tu comentario no aparece, puede ser que akismet lo haya capturado, cada día lo reviso y lo coloco en su lugar. Siento las molestias.