Recientemente terminé una aplicación sin mayor chiste que lograr una integración decente entre PHP y JavaScript.
La aplicación en si es una lista de bookmarks, en la cual cada entrada puede ser calificada por los usuarios una vez por sesión. Hay dos formas de hacerlo, la primera es usando el xmlHttpRequest el cual es un objeto para enviar, manejar y recibir solicitudes via http, en particular (mas no exclusivamente) solicitar xml via http (como su nombre bien lo dice :)). En esta liga Pablo Fischer habla un poco de el.
La segunda forma es la que uso, de hecho un poco menos profesional, es usando el atributo target
del objeto form
, un iframe
y una medida dosis de javascript.
Para empezar hacemos el iframe
cuyo atributo name
sea correspondiente con el target
de la forma. Seria bueno hacer el iframe invisible usando css: style='visibility:hidden;width:0px;height:0px'
. Si usaba display:none
, el safari no lo veia por lo que abria una nueva ventana con el nombre que ponia en el target
. De esta forma, el handler de la forma sera abierto dentro del iframe
sin cambiar (en principio) la vista de la aplicación. Desde adentro del iframe, usando javascript, nos podemos referir al frame principal (contenedor del iframe) como document.parent.anyThing()
y asi actualizo la información desplegada en el frame principal.
En cuanto pula un poco mas el codigo, lo publico, mientras aqui pueden ver la pantalla principal, y aqui parte del javascript que se ejecuta dentro del iframe
.
Una nota muy importante es darse cuenta que esto depende en gran medida del browser, lo probe en safari y en firefox, no lo he probado en Internet Explorer.
no vi ni mierda solo code