Pagina 1 di 1
javascript e funzioni reload()
Inviato: sab 30 apr 2011, 10:58
da ermes
ciao a tutti.
ho creato alcune pagine web in php.
in particolare, per alcune funzionalità del sistema da una pagina posso lanciare una seconda pagina che, a sua volta può lanciare una terza pagina:
situazion
pagina nonno -> pagina padre -> pagina figlio.
nel sistema attuale, quando chiudo la pagina figlio, con un semplicissimo script faccio aggiornare la pagina padre e quando chiudo la pagina padre faccio aggiornare automaticamente la pagina nonno.
questo lo script:
Codice: Seleziona tutto
<SCRIPT LANGUAGE=\"JAVASCRIPT\">
function aggiorna(){
opener.parent.location.reload(); /* ricarica la pagina padre */
self.close(); /* chiude la pagina corrente */
}
</SCRIPT>
ora vorrei che alla chiusura della pagina figlio si aggiornasse, oltre alla pagina padre, anche la pagina nonno ma i miei tentativi non funzionano:
Ho provato così:
Codice: Seleziona tutto
<SCRIPT LANGUAGE=\"JAVASCRIPT\">
function aggiorna(){
opener.parent.location.reload(); /* ricarica la pagina padre */
opener.parent.parent.location.reload(); /* ricarica la pagina nonno */
self.close(); /* chiude la pagina corrente */
}
</SCRIPT>
ma mi si aggiorna solo il padre...
cosa sbaglio ?
(ps: spero di essermi spiegato decentemente !)
Re: javascript e funzioni reload()
Inviato: sab 30 apr 2011, 12:34
da teox99
la tua soluzione oltre che a non essere cross browser è contro gli standard w3cs.
dovresti capire queli sono le tue vere esigenze e riproporre una soluzione funzionante magari usando ajax o simili.
Re: javascript e funzioni reload()
Inviato: sab 30 apr 2011, 22:22
da ermes
allora... avrei risolto così:
Codice: Seleziona tutto
<SCRIPT LANGUAGE=\"JAVASCRIPT\">
function aggiorna(){
opener.parent.location.reload(); /* ricarica la pagina padre */
opener.opener.parent.location.reload(); /* ricarica la pagina nonno */
self.close(); /* chiude la pagina corrente */
}
</SCRIPT>
premetto che non sono un esperto e per questo probabilmente non sono riuscito a capire cosa non rispetta gli standard... potresti darmi alcune dritte ?
grazie 1000
Re: javascript e funzioni reload()
Inviato: dom 1 mag 2011, 12:35
da teox99
il controllo della chiusura, aggiornamento o apertura delle pagine deve essere decisa manualmente dall'utente
le pagine si devono aprire con dei semplici link <a href target>
x questo la tua funzione aggiorna non ha senso di esistere.
Re: javascript e funzioni reload()
Inviato: dom 1 mag 2011, 15:27
da ermes
scusa se rilancio la richiesta di chiarimenti.
in effetti le mie maschere si aprono e chiudono attraverso dei link (solitamente metto dei bottoni con link incorporato).
ho creato queste funzioni perchè alla chiusura della pagina (tipicamente per la creazione, la modifica o la cancellazione di un elemento contenuto in un DB) ho la necessità di aggiornare la pagina web che ha lanciato la maschera. Esempio:
ho in una pagina l'elenco degli allievi della mia classe; ad ogni allievo è associato un pulsante per modificare i dati e uno per cancellare l'allievo stesso.
quando uso un pulsante mi si apre una maschera con i dati dell'allievo.
una volta fatta la modifica e deciso di cancellare l'allievo, confermo la decisione con un pulsante che salva i dati, chiude la maschera e riporta il controllo alla pagina di partenza aggiornandola per visualizzare le modifiche operate (e qui interviene la funzione javascript).
quindi mi sembra che tutto avvenga sotto il controllo dell'utente.
mi sfugge qualche cosa ?
grazie per la pazienza
Re: javascript e funzioni reload()
Inviato: dom 1 mag 2011, 15:50
da teox99
non ci siamo capiti, stai sbagliando semlicemente il modo di pensare.
se vuoi aggiornare dinamicamente delle pagine puoi usare AHAH
http://www.openjs.com/articles/ajax/aha ... over_http/
il tuo problema e' che cosi' facendo lasci aperta la pagina da modificare ed e' logico che poi devi fare i salti mortali per riaggiornarla.
puoi risolvere ancora piu' semplicemente spedendo in post/get le variabili sempre alla stessa pagina.
Re: javascript e funzioni reload()
Inviato: dom 1 mag 2011, 16:48
da ilmich
Correggetemi se sbaglio, ma secondo me, quello che sta cercando di dirti teox99 e' semplicemente che la tecnica che stai cercando di usare e' una forzatura.
Non serve aprire 3 popup per un applicazione di inserimento / modifica / cancellazione record.
Ti diventa tutto piu' complicato e difficilmente gestibile, soprattutto perche' con molta probabilita' non e' compatibile con tutti i browser in circolazione(ma forse questo aspetto non ti interessa).
Sarebbe piu' semplice e lineare, anziche' aprire i popup, prevedere almeno due pagine, una con la lista dei dati, e l'altra che ti consente di fare inserimenti/modifiche e cancellazioni su di essi.
In questo modo il problema dell'aggiornamento non ti si pone per niente.
Re: javascript e funzioni reload()
Inviato: lun 2 mag 2011, 8:58
da ermes
ok!
ora ho capito.
grazie 1000
