Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    pb window.opener dopo aggiornamento pagina

    Ciao a tutti,

    ho un problema con l'aggiornamento della pagina madre nel momento in cui chiudo la popup.
    Mi spiego, nella popup c'è un modulo da compilare e, nel momento in cui l'utente salva, devo aggiornare un elenco nella pagina madre.
    Il problema è che nel momento in cui devo salvare non ho più l'oggetto window.opener, perchè prima di arrivare al modulo sopracitato ci sono stati degli aggiornamenti alla pagina durante i quali viene perso.
    Non riesco a passarmi 'window.opener' all'interno della pagina durante gli aggiornamenti.

    Qualcuno può aiutarmi?

    grazie!


  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Per perdere opener significa che hai chiuso la pagina madre?
    Si no non capisco come potresti perderla, per agevolare posta un link si fa prima.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    ciao,

    intanto ti ringrazio per avermi risposto.
    non posso mandarti il link in quanto il sito è protetto da password, proverò a spiegarmi meglio (in effetti la descrizione del problema non è molto dettagliata):
    all'inizio del codice javascript ho impostato la variabile

    var w = window.opener;

    in vari punti ho inserito degli alert per visualizzare il contenuto della variabile.
    -all'apertura della pagina popup mi visualizza all'interno dell'alert '[object]'
    -dopo il primo aggiornamento della pagina popup mi visualizza 'null'

    il fatto è che per caricare i dati che mi servono durante gli aggiornamenti alla pagina devo fare delle chiamate alla servlet, ed è lì che si perde il riferimento alla pagina madre, la quale comunque rimane sempre aperta e che è quella che dovrei aggiornare al momento della chiusura della popup.

    grazie ancora!

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Se "opener" identifica la pagina che ha aperto la pagina, ovviamente cambiando la pagina (ed anche l'aggiornamento della stessa costituisce un cambiamento) "opener" non esiste piu'... come non esiste la pagina che e' stata aperta.

    Per potersi riferire senza troppi problemi alla finestra "principale" occorre che questa abbia un nome assegnato... quindi prima di aprire qualunque popup fai:

    window.name="mia_principale";
    window.open(....);

    A questo punto potrai ottenere da qualunque finestra un riferimento alla finestra "principale" con un semplice:

    w = window.open("","mia_principale");

    ed usarlo per quello che ti pare

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    grazie per l'aiuto!

    ciaoooooo!!!!

  6. #6
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    per br1 Ho letto la risposta e l'ho subito archiviata nella mia raccolta. Però una domanda.
    Ho fatto due paginette server. La prima ha un pulsante per aprire un popup e un tasto per fare un refresh; la seconda ha un tasto e mi restituisce solamente alert(opener.document.title);

    Ebbene, dopo aver aperto il popup, ho fatto fare più volte il postback della pagina madre, e, con mia grande sorpresa, il popup non mostra di aver perso il riferimento a opener.
    Ho provato con IE7, Opera9 e Firefox2

    E' giusto e questo comportamento si riferisce solo ai browser moderni? :master:

    ciao
    Pietro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.