Foros del Web » Programación para mayores de 30 ;) » Java »

problema confirm javascript internacionalizacion struts

Estas en el tema de problema confirm javascript internacionalizacion struts en el foro de Java en Foros del Web. Hola, tengo un problema al querer hacer un confirm en javascript utilizando ficheros de internacionalización de struts. Os comento: Sé que si en fichero properties ...
  #1 (permalink)  
Antiguo 17/09/2012, 02:21
 
Fecha de Ingreso: diciembre-2008
Mensajes: 233
Antigüedad: 15 años, 11 meses
Puntos: 1
problema confirm javascript internacionalizacion struts

Hola, tengo un problema al querer hacer un confirm en javascript utilizando ficheros de internacionalización de struts. Os comento:

Sé que si en fichero properties tengo por ejemplo el mensaje:

texto = hola amigo {0}, hoy es {1}

y en un action:

String[] argumentos = Mario, lunes;
String textoConfirm = getText("texto", argumentos);

luego, al hacer el confirm en la jsp, obtengo el mensaje:

var textoConfirm = '<s:property value="textoConfirm"/>';
confirm(textoConfirm)
{
alert('hola');
}

"hola amigo Mario, hoy es lunes";

Pero lo que yo quiero es hacerlo todo en javascript, sin coger los valores de texto en el action, sino en la jsp. Lo he intentado así:

var oldName = "Mario";
var dia = "lunes";
textoConfirm = "<s:text name="texto"><s:param value="oldName"/><s:param value="dia"/></s:text>";

pero lo que obtengo es:

hola null , hoy es null.

¿Podría alguien decirme como debe hacerse? Muchas gracias de antemano, un saludo
  #2 (permalink)  
Antiguo 17/09/2012, 04:47
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 20 años, 1 mes
Puntos: 454
Respuesta: problema confirm javascript internacionalizacion struts

Hola:

La parte de servidor no ve las variables de javascript, puesto que el servidor se ejecuta en el servidor y se ejecuta antes de que se ejecute el código javascript en el navegador. Son lenguajes distintos que se ejecutan en maquinas distintas (servidor y pc del cliente) y en tiempos distintos (durante generación de la página y durante visualización en el navegador)

Si tu texto del servidor es con parametros estilo "hola {0} hoy es {1}" y quieres reemplazar los valores, tienes que hacer una funcion en javascript que se encargue de eso

var oldName = "Mario";
var dia = "lunes";
textoConfirm = funcion_de_javascript ('<s:text name="texto"/>', oldName, dia);

Tienes una función que se parece a eso en http://chuwiki.chuidiang.org/index.p..._en_javascript en el apartado "Texto con Parametros". La copié de algún lado y usa cadenas de formato estilo C/C++, tal que "hola %s, hoy es %s"

Se bueno.
__________________
Apuntes Java
Wiki de Programación

Última edición por chuidiang; 17/09/2012 a las 04:55
  #3 (permalink)  
Antiguo 18/09/2012, 06:50
 
Fecha de Ingreso: diciembre-2008
Mensajes: 233
Antigüedad: 15 años, 11 meses
Puntos: 1
Respuesta: problema confirm javascript internacionalizacion struts

Muchas gracias por tu respuesta, no me ha funcionado como tú me decías, y he intentado hacerlo desde el action pero no conseguía que escribiera bien los signos de interrogación ¿ de los mensajes en castellano, de modo que al final lo que he hecho es, en la jsp:

textoConfirm = "<s:text name="texto"/>";
textoConfirm = textoConfirm.split("{0}")[0] + "Mario" + textoConfirm.split("{0}")[1] + "lunes";

siendo el texto en el properties

hola amigo {0}, hoy es {1}


Un saludo

Elena

Etiquetas: confirm, internacionalizacion, javascript, js, struts
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 14:34.