Agradecería que alguien pudiese ayudarme con un pequeño problema que me ha surgido.
Estoy programando un pequeño módulo para implementar en una web. Este módulo es multilenguaje y el idioma se cambia por ajax llamando a un archivo php como el diguiente:
<? session_start(); ?>
<? $_SESSION['lang']='esp'; ?>
XGGLang =
{
TextAjuda : "Ayuda",
TextTornar : "Volver",
TextInstalar : "Instalar",
TextBorrar : "Borrar",...
}
El string devuelto por ajax (XGGLang={TxtAjuda....}) queda disponible para javascrip mediante una instrucción eval(). Luego, el módulo muestra los textos en el idioma elegido mediante las propiedades innerHTML, value...
El problema me sale en una página en la que, si no se reciben ciertos datos o, si estos no son correctos, se muestra un alert de error:
if ($error) {
echo "<script type='text/javascript'>alert(XGGLang.InstallTextError".$error .");</script>";
}
El problema viene de que, cuando se ejecuta este segundo código, aún no ha dado tiempo de que se hayan cargado los valores de XGGLang y, por tanto, el alert no muestra ningún mensaje.
Hay alguna forma de, desde otro script, detener la ejecución de la página hasta que se haya cargado completamente XGGLang? Se os ocurre otra solución?