Foros del Web » Programando para Internet » Javascript »

Usar variable para replace()

Estas en el tema de Usar variable para replace() en el foro de Javascript en Foros del Web. Hola a todos, tengo este código, el cual reemplaza la palabra texto por una imagen en todo el documento: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver ...
  #1 (permalink)  
Antiguo 08/07/2011, 09:31
zant95
Invitado
 
Mensajes: n/a
Puntos:
Pregunta Usar variable para replace()

Hola a todos, tengo este código, el cual reemplaza la palabra texto por una imagen en todo el documento:

Código Javascript:
Ver original
  1. $(document).ready(function() {
  2.     $('body').html($('body').html().replace(/texto/gi, '<img src="me1.gif" alt="me1" />'));
  3. });

Pero me gustaría que "texto" fuese una variable.
  #2 (permalink)  
Antiguo 08/07/2011, 09:42
Avatar de hmvr414  
Fecha de Ingreso: marzo-2011
Ubicación: Santiago de Cali, Colombia
Mensajes: 74
Antigüedad: 13 años, 1 mes
Puntos: 16
Respuesta: Usar variable para replace()

puede funcionar asi:

Código Javascript:
Ver original
  1. var variable="texto";
  2.  
  3. var re = new RegExp(variable, "gi");
  4. $('body').html($('body').html().replace(re, '<img src="me1.gif" alt="me1" />'));
  #3 (permalink)  
Antiguo 08/07/2011, 10:08
zant95
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Usar variable para replace()

Funciona, muchísimas gracias.
  #4 (permalink)  
Antiguo 08/07/2011, 11:51
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: Usar variable para replace()

Al usar el constructor para las regexp debes tener cuidado porque al ser un string, las \ deben escaparse, aunque vayan a escapar otra cosa. Ej:
Código Javascript:
Ver original
  1. var literal = /^http:\/\//;
  2. var contruc = new RegExp('^http:\\/\\/');
Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red

Etiquetas: html, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:04.