Foros del Web » Programando para Internet » Javascript »

BUG IE? form TARGET a un IFRAME(creado con DOM) no funciona.. porque?

Estas en el tema de BUG IE? form TARGET a un IFRAME(creado con DOM) no funciona.. porque? en el foro de Javascript en Foros del Web. loading.................. Lo que hago es interactuar con un IFRAME pero pasa que si creo un iframe con DOM simplemente NO FUNCIONA. aqui codigo: Este codigo ...
  #1 (permalink)  
Antiguo 24/02/2007, 15:47
Avatar de MaBoRaK  
Fecha de Ingreso: abril-2003
Ubicación: La Paz - Bolivia
Mensajes: 2.003
Antigüedad: 21 años
Puntos: 35
BUG IE? form TARGET a un IFRAME(creado con DOM) no funciona.. porque?

loading..................

Lo que hago es interactuar con un IFRAME pero pasa que si creo un iframe con DOM simplemente NO FUNCIONA.

aqui codigo:

Este codigo funciona

Código HTML:
<form target="aqui" method="POST" action="frameUpload.php" enctype="multipart/form-data">
<input name="a" type="file" value="file....":>
<input name="b" type="submit" value="enviar">
</form>
<iframe name="aqui" src="frameUpload.php"></iframe> 
pero este otro ya no, y no entiendo el porque!!!

Código PHP:
<script type="text/javascript">
window.onload=function()
{
   var 
rame=document.createElement("iframe");
   
rame.src    ="frameUpload.php";
   
rame.name     ="aqui"
   
document.body.appendChild(rame);
}
</script>
<form target="aqui" method="POST" action="frameUpload.php" enctype="multipart/form-data">
<input name="a" type="file" value="file....":>
<input name="b" type="submit" value="enviar">
</form> 
No entiendo de ambas formas se crea al misma estructura HTML con el iframe,.,.. osea TODO IGUAL! pero en el submit del segundo caso me abre en una nueva ventana y no entiendo el porque.




connection closed.
__________________

Maborak Technologies
  #2 (permalink)  
Antiguo 24/02/2007, 16:11
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Re: BUG IE? form TARGET a un IFRAME(creado con DOM) no funciona.. porque?

En explorer 7: funciona, en explorer 5: no funciona. Supongo que deberás usar innerHTML.
  #3 (permalink)  
Antiguo 24/02/2007, 16:18
Avatar de Panino5001
Me alejo de Omelas
 
Fecha de Ingreso: mayo-2004
Ubicación: -34.637167,-58.462984
Mensajes: 5.148
Antigüedad: 20 años
Puntos: 834
Re: BUG IE? form TARGET a un IFRAME(creado con DOM) no funciona.. porque?

Ojo: Te hablo de la creación dinámica.
  #4 (permalink)  
Antiguo 24/02/2007, 17:39
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: BUG IE? form TARGET a un IFRAME(creado con DOM) no funciona.. porque?

Hola:

Hace poco descubrí el mismo problema y me tiré de los pelos, ya que encontré una solución que valía para explorer pero fastidiaba el funcionamiento en otros navegadores.
La idea es que el atributo name se asigna correctamente en el iframe, pero no se crea el atributo en el objeto window...

El sitio donde lo he hecho funcionar es este: Iconos online, cuando se abre una imagen se crea una miniatura que es un iframe creado automáticamente...

El código es este:

Código:
var _navegador = navigator.userAgent;
var op = /opera/i.test(_navegador);
var mo = /gecko/i.test(_navegador);
//...
nuevo = cuentaIFrames++;
nuevoNombre = "NIFrame" + nuevo.toString();
nuevoIframe = document.createElement("iframe");
with (nuevoIframe)	{
	frameBorder = 0;
	id = nuevoNombre;
	name = nuevoNombre;
	width = 32;
	height = 32;
	style.overflow = "hidden";
}
document.getElementById("colecciones").appendChild(nuevoIframe);
document.getElementById("colecciones").appendChild(document.createTextNode(" "));

iFs = document.getElementsByTagName("iframe");
if (!(op || mo))
	for (var i = 0, total = iFs.length; i < total; i ++)
		if (iFs[i] == nuevoIframe)
			window.frames[i].name = iFs[i].name; 
Puse en azul lo destacable...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 13:59.