Foros del Web » Creando para Internet » Flash y Actionscript »

Cargar paginas dinamicas con un menu en flex

Estas en el tema de Cargar paginas dinamicas con un menu en flex en el foro de Flash y Actionscript en Foros del Web. Buenas, he hecho un pequeño menu en flex que usa esta función para cargar a traves de AJAX un codigo html en un campo DIV. ...
  #1 (permalink)  
Antiguo 15/06/2008, 05:42
 
Fecha de Ingreso: junio-2008
Mensajes: 1
Antigüedad: 9 años, 6 meses
Puntos: 0
Cargar paginas dinamicas con un menu en flex

Buenas,

he hecho un pequeño menu en flex que usa esta función para cargar a traves de AJAX un codigo html en un campo DIV.

Y me da el error "Permiso denegado" cuando hago el open desde javascript.

El fichero "prueba.txt" esta en la misma carpeta que el fichero index.html que contiene el codigo javascript y el html.

Estoy haciendo las pruebas en local, a traves de easyphp.

Si lo hago todo con codigo javascript, es decir, invoco todo el proceso sin que intervenga FLEX, funciona correctamente.
Código HTML:
<div align="center" class="Estilo1" onmousedown="cargar_pagina('prueba.txt')">cargar_pagina</div> 
Pero cuando lo invoco desde flex a traves del externalinterface, el metodo open me da el $%$%& error.

No entiendo por que...

¿a alguien se le ocurre algo?



Codigo FLEX:
Código:
import flash.external.*;
    
public function processAjax():void 
{        	
if (ExternalInterface.available) {
var _f:String = "cargar_pagina"; var _m = ExternalInterface.call(_f,"prueba.txt"); trace("Call realizado:" + _m);
} else {
trace("La external interface no esta disponible.");
}
}
Codigo HTML:
Código:
<html>
<div id="contenedor" style="width:100%; height:100%; left:0px; top:0px; background-color:#0099FF"/>
</html>
Codigo JAVASCRIPT:
Código:
<script>
function NuevoAjax() {
var xmlhttp=false; try {
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch(E) {
xmlhttp = false;
}
} if(!xmlhttp && typeof XMLHttpRequest!='undefined') {
xmlhttp = new XMLHttpRequest();
} return xmlhttp;
} function cargar_pagina (url) {
alert("cargar_pagina"); ajax=NuevoAjax(); ajax.onreadystatechange=function()
{
alert("hola"); alert("readystate: "+ajax.readyState); if (ajax.readyState==1) { //Sucede cuando se esta cargando la pagina
document.getElementById("contenedor").innerHTML = "cargando..."
} else if (ajax.readyState==4) { //Sucede cuando la pagina se cargó
if(ajax.status==200) { //Todo OK
document.getElementById("contenedor").innerHTML = ajax.responseText;
} else if (ajax.status==404) { //La pagina no existe
document.getElementById("contenedor").innerHTML = "La página no existe";
} else { //Mostramos el posible error
document.getElementById("contenedor").innerHTML = "Error:".ajax.status;
}
}
}
alert("open"); try {
ajax.open("GET", url, true);
} catch (E) {
alert("Error con open: "+E.name); alert("Mensaje: "+E.message);
} alert("send"); ajax.send(null);
}
</script>
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 00:32.