ejemplos ejemplo bootstrap allowfullscreen html forms firefox

html - ejemplo - El formulario de Firefox dirigido a un iframe abre una nueva pestaña



iframe php (7)

Esto puede sonar estúpido, pero ¿trataste de darle al iframe una identificación igual al atributo de nombre? Esto parece resolver algunos problemas relacionados con las formas.

<form method="post" action="link/to/post/to" target="take_the_reload"> ... </form> <iframe id="take_the_reload" name="take_the_reload"></iframe>

<form method="post" target="take_the_reload"> ... </form> <iframe class="hide_me" name="take_the_reload"></iframe>

Mi problema es el siguiente:

Tengo un formulario que debe evitarse al actualizar la página en la que se encuentra cuando se envía. Para combatir este problema, he estado utilizando un iframe vacío como el target para el formulario. Esto funciona exactamente como se esperaba en Chrome (v12.0.742) pero falla en Firefox (v6.0).

Lo que sucede en Firefox es que el iframe se abre en una nueva pestaña al enviar el formulario, que obviamente no es lo que quiero.

He encontrado some posts related , pero ninguna aborda mi situación particular y sus soluciones no funcionan.

Desafortunadamente, el trabajo está en un sistema patentado en una red privada, así que no puedo simplemente proporcionar un enlace.

También intenté usar un frame en lugar de un iframe ya que una respuesta a un tema relacionado fue que el uso de iframe de esa manera está en desuso. Pero los resultados son idénticos.

Además, el iframe está codificado en la página en el sentido de que no se agrega dinámicamente con JavaScript. Finalmente, como dije antes, esto funciona sin problemas en Chrome, pero no funciona en absoluto en Firefox. ¡IE no es una preocupación, por lo que cualquier solución no compatible con IE es bienvenida!


Otra variación de este problema: estaba teniendo el mismo problema, y ​​las sugerencias de "nombre" / "identificación" no estaban haciendo ninguna diferencia. Descubrí que para mí parece ser un problema relacionado con el dominio.

Abro una página en http://mypc/app/page.aspx , con dos iframes (A y B).

iframe A abre una nueva ventana del navegador para http://localhost/app/otherpage.aspx . otherpage.aspx tiene un formulario dirigido a iFrame B. El envío del formulario abre una nueva ventana.

Si cambio iFrame A para abrir la nueva ventana del navegador a http://mypc/app/otherpage.aspx , entonces enviar el formulario desde otherpage.aspx muestra correctamente el resultado en iFrame B.

Por lo tanto, al menos en Firefox 47.0, parece estar impidiendo la "orientación" entre dominios. IE11 no parece tener tales preocupaciones (al menos, entre localhost y el nombre real de la máquina).


Para aquellos que puedan encontrar este problema más adelante, lo resolví agregando un atributo de nombre al iframe que era el mismo que el id del iframe:

<iframe id=''iframeID'' name=''iframeID''></iframe>

Estúpido, sí, pero eso es lo que le gusta a Firefox


Para cualquier persona en el futuro que busque esto, tenga en cuenta que si tiene dos o más formularios que se dirigen a la misma identificación de iframe, Firefox abrirá una nueva pestaña a menos que los dos formularios tengan diferentes nombres. Por extraño que parezca, esto no es un problema en Chrome. Entonces, por ejemplo, esto no funcionará en Firefox

<form method="post" action="link/to/post/to" target="theiframe"> <!---input stuff here----> </form> <form method="post" action="link/to/post/to" target="theiframe"> <!---input stuff here----> </form> <iframe id="theiframe" name="theiframe"></iframe>

pero funcionará en Chrome. Si quieres que el código funcione tanto en Chrome como en Firefox, deberías hacer algo como:

<form name="form1" method="post" action="link/to/post/to" target="theiframe"> <!---input stuff here----> </form> <form name="form2" method="post" action="link/to/post/to" target="theiframe"> <!---input stuff here----> </form> <iframe id="theiframe" name="theiframe"></iframe>

No sé si esto es un error o Firefox está diseñado de esa manera. Estoy trabajando con Firefox 18 (la última versión hasta el momento de escribir esto) y sigue siendo un problema.

Espero que esto ayude a alguien más; Estuve rechinando los dientes durante aproximadamente 2 horas antes de que finalmente descubriera cuál era el problema.

¡Aclamaciones!


Puede sonar estúpido y extraño, pero los próximos pasos resolvieron mi problema (Firefox abrió una nueva pestaña al enviar en Iframe)

1) Use el mismo valor para atributos de iframe "id" y "name"

2) No use mayúsculas en el atributo "id" o "nombre" de Iframe (myIframe => my_iframe)

3) Verifique el atributo Iframe "src", no funcionó para mí cuando estaba "sobre: ​​en blanco", este atributo debería eliminarse como lo veo


SUGERENCIA: No use letras mayúsculas en id y nombre

No funciona

<iframe id="formSubmit" name="formSubmit">

Trabajos

<iframe id="form_submit" name="form_submit">

¡Fue una gran sorpresa para mí!


Solo quiero agregar, nada de lo anterior funcionó para mí. Encontré una razón adicional que lo hizo funcionar. Se completó la adición del ID, y luego se agregó un src = al marco que es igual a la página que se mostrará junto con un?. Entonces mi código es:

<iframe id="eframe" name="eframe" src="created.php?"></iframe>

Lo cual resuelve el problema, ¡ya no se abre en otra ventana en Firefox!