Duda iframe,textbox & link [html]

Buenas tengo una duda , supongamos que tengo 2 paginas , la primera se llama

pagina.html

tiene un iframe, dentro de ese iframe este cargado la 2 pagina

iframe.html

la pagina iframe contiene un textbox y un boton , lo que ando buscando es que , al dar clic al boton , se actualice la pagina y valla a la direccion del textbox ( todo esto dentro del iframe ) , he encontrado este codigo
<script language="JavaScript">
function A(f)
{
var url="";
url="http://";
if(f.d.checked) {url+="www.";}
url+=f.a.value+"."+f.b.value;
window.location=url;
}
</script></head><body><form>
<input type="text" name="a" value="google">
<input type="text" name="b" value="com">
<input type="button" name="c" value="Ahorita voy!" onClick="A(this.form);"><br>
<input type="checkbox" name="d" checked>Añadir www

</form>
( Pegarlo directamente en un .html y probarlo )

Si lo probais sin meterlo en un iframe va correctamente , el problema es cuando iframe.html esta metido dentro de pagina.html , metes la url y al cargarla se carga una pagina sin contenido , "" , ando como buscar esto por html/javascript y no consigo encontrar nada :/
eso está mas que obsoleto, te recomiendo usar php + css para ese tipo de cosas.

Puedes usar si quieres un framework para ahorrarte trabajo, yo uso este: http://codeigniter.com


El framework viene muy bien por el tema de Model-View-Controller ya que te permite estructurar todo de manera mucho mas sencilla y a la hora de retocar todo es mucho mas intuitivo

También te da soporte para rutas amigables y pasar parámetros por ella

Realmente lo que comentas que quieres hacer en codeigniter no pasa de ser el form, con el botón, pasas el texto al controller y el controller te redirecciona a la web
No lo busco para ningun trabajo , en php se podria hacer mas sencillo pero ando buscando la posibilidad de hacerlo unicamente con html/javascript que por lo que veo es imposible [+risas]
Creo recordar que tenías que usar algo como window.frames.nombredelframe.location = url. Desconozco si funcionará en todos los navegadores.
Es mejorable ya que está hecho con prisas y obviando tema de validaciones de html y comprobaciones (URL's válidas) te podría valer algo así:

Un archivo index.html

<html>
   <head>
      <title>Prueba IFRAME</title>
   </head>
   <body>
      <iframe src="iframe.html" width="640" height="480" scrolling="yes">Tu navegador no soporta el tag IFRAME</iframe>
   </body>
</html>


Un archivo iframe.html

<html>
   <head>
      <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript"></script>
      <script type="text/javascript">
         //<![CDATA[
         $(document).ready(function() {
            $('form#redirect').submit(function() {
               window.location.href = $('input#url').val();
               return(false);
            });
         });
         //]]>
      </script>
   </head>   
   <body>
      <form method="post" id="redirect" action="#">
         <fieldset>
            <p>
               <label for="url">Dirección: </label>
               <input type="text" id="url" name="url" value="http://www.w3.org/" />
            </p>
            <p><input type="submit" value="redireccionar" /></p>
         </fieldset>
         
      </form>
   </body>
</html>
Jaja muchas gracias, me guardo este ejemplo [beer]
6 respuestas