lunes, 24 de octubre de 2011

jquery nl2br

Aunque en javascript podemos usar una función siguiente cuya finalidad sea cambiar los LF (line feed) por tags br de html:

function nl2br(value)
  return value.replace(/\n/g, ' < b r /> ');
end
Puede llegar a suceder que esta función no sirva cuando el valor al que vamos a aplicar el filtro proviene de un método ajax get o post de jquery como $.post() o $.get()  y es multilínea. Incluso usar la función de php nl2br retornaría un valor incorrecto. Así que deben aplicar una nueva función/filtro de la siguiente forma:

function nl2br(value)
   return value.replace(/\\n/gm, ' < b r / >' );
end
 
Nótese que se esta 'escapando' el caracter que representa el new line o line feed. Además se agrega el modificador /m para que afecte al valor dado aunque éste sea multilínea.

No hay comentarios:

Publicar un comentario