2012-05-21 4 views
0

1.htmlкак выйти из IFrame

<form id="abc" method="post" action="navigate.php"> 
<input type="radio" name="nav" value="a1" /> A 1 
<input type="radio" name="nav" value="a2" /> A 2 
<input type="radio" name="nav" value="b1" /> B 1 
<input type="radio" name="nav" value="b2" /> B 2 
<input type="radio" name="nav" value="c1" /> C 1 
<input type="radio" name="nav" value="c2" /> C 2 
<input type="submit" name="submit" value="Go" /> 
</form> 

navigate.php

<? 
if ($_POST['nav']==a2) { 
    echo "<meta http-equiv=\"refresh\" content=\"0;URL=page_1.php\">";} ?> 

2.html

<iframe src="1.html"/> 

Когда я выбираю a2 и нажмите идти он переходит на страницу_1. php, но внутри рамки. Я хочу, чтобы главное окно перешло на страницу_1.php. Есть ли решение для этого?

+2

Пожалуйста, не забудьте включить сообщения об ошибках PHP и предупреждения в процессе разработки. Код PHP, который вы опубликовали, содержит по крайней мере одно важное предупреждение. – Charles

+0

Является ли это выбором внутри вашего iframe? – pduersteler

+0

Да, они все в iframe. но я хочу увидеть page_1.php в окне по умолчанию. не в рамке ... – Soner

ответ

5

Вы можете использовать атрибут target тега формы, чтобы определить рамку/окно, на которое должен быть направлен объект отправки. В вас случае цель использования = «_ вершина», чтобы открыть результат в верхнем фрейме (главное окно)

<form id="abc" method="post" target="_top" action="navigate.php"> 
<input type="radio" name="nav" value="a1" /> A 1 
<input type="radio" name="nav" value="a2" /> A 2 
<input type="radio" name="nav" value="b1" /> B 1 
<input type="radio" name="nav" value="b2" /> B 2 
<input type="radio" name="nav" value="c1" /> C 1 
<input type="radio" name="nav" value="c2" /> C 2 
<input type="submit" name="submit" value="Go" /> 
</form> 

Проблема заключается в том, что она будет открыта в верхней раме (окно) во всех случаях, так независима того, что вы выбираете в качестве значения для переключателя.

+0

спасибо soo много !! что сработало – Soner

0

попробовать использовать некоторые JavaScript, как:

<script> 

(window.parent || window).location = "LOCATION_HERE.PHP"; 

</script> 
1

В зависимости от вашего DOCTYPE, вы можете включить атрибут target на form элементов просто, как вы можете с a элементами. Что-то вроде этого:

<form id="abc" method="post" action="navigate.php" target="_parent"> 

Это будет отображать полученный ответ в кадре чуть выше фрейма, который, вероятно окно. Или, чтобы обеспечить все окно:

<form id="abc" method="post" action="navigate.php" target="_top"> 
1

Вы можете использовать target="_top":

<form id="abc" method="post" action="navigate." target="_top">