Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    25

    passare il focus da una finestra a un altra

    salve, ho un problema riguardante il focus delle finestre, dovrei fare in modo che cliccando su un immagine si apra un popup con un form da compilare, e che se il form sia stato compilato correttamente, cliccando su un bottone la popup si chiuda e l'immagine della pagina iniziale cambi. la funzione che si attiva all'onClick del button del form deve fare un window.close() per chudere la popup e successivamente deve portare il focus sulla finestra iniziale per poi modificare l'immagine. Non riesco a riportare il focus sull'altra finestra. come posso fare?

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Devi riportare il focus sull'altra pagina prima di chiudere la finestra... se e' chiusa come potrebbero istruzioni ormai scomparse agire?

    Certo che qualche byte del codice che usi potrebbe farci capire di piu'...
    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

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    25
    codice:
    function prenotazione(posto){
        var w = 400;
        var h = 250;
        var l = Math.floor((screen.width-w)/2);
        var t = Math.floor((screen.height-h)/2);
        
        if(isFree(posto) == false)
          window.alert("il posto non e' disponibile");
        else{
       
        prenWindow = window.open("prenotazione","","width=" + w + ", height=" + h + " ,top=" + t + ", left=" + l );
        prenWindow.document.writeln('<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">');
        prenWindow.document.writeln('<html><head><title>Prenotazione</title>'+
                                    '<?php include("functions.php");?>'+
                                    '<script type="text/javascript" src="teatro.js"></script>' +
                                    '<link rel="stylesheet" type="text/css" href="stile2.css" media="screen">'+
                                    '</head>');
        prenWindow.document.writeln('<body><p id="main">');
        prenWindow.document.writeln('Prenotazione');
        prenWindow.document.writeln('<form action="abc.php" method="GET" name="prenota">'+
                                    'prenotazione posto: <input type="text" value="'+posto+'" readonly="readonly" name="posto" size="2">
    '+
                                    'nome: <input type="text" name="nome">
    '+
                                    'cognome: <input type="text" name="cognome">
    '+
                                    'email: <input type="text" name="mail">
    '+
                                    '<input type="reset" value="resetta">'+   
                                    '<input type="submit" value="prenota">'+                            
                                    '<button type="button" onClick="window.close();">chiudi</button>'+
                                    '<button type="button" onClick="ttt();"> TTT </button>'+ 
                                    '</form>');
        prenWindow.document.writeln("</p></body></html>");                                      
    		prenWindow.document.close();                                 
        }
    }
    Questa è la funzione che mi apre il popup con il form da compilare, ho aggiunto un button di prova TTT che una volta cliccato lancia una funzione ttt().
    Se volessi che la funzione ttt() mi chiuda la popup da dove viene lanciata e mi riporti il focus sulla finestra principale come dovrei fare?

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    25
    qualche consiglio?

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Intanto non credo che questa

    '<?php include("functions.php");?>'+

    possa mai essere eseguita: tu componi la pagina direttamente dal client seza passare dal server che quindi non la vedra' e non potra' eseguirla.

    Inoltre manca la funzione che richiami nel form... ttt() magari sta nei files inclusi a noi sconosciuti.

    Poi specifica meglio cosa non ti funziona: le azione enl form sono separate ed indipendenti... racconta
    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

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    25
    Originariamente inviato da br1

    Inoltre manca la funzione che richiami nel form... ttt() magari sta nei files inclusi a noi sconosciuti.

    Poi specifica meglio cosa non ti funziona: le azione enl form sono separate ed indipendenti... racconta
    Per funzionare funziona tutto, volevo solamente aggiungere un button che mi chiudesse la finestra e mi riportasse il focus sulla pagina da cui la popup è stata aperta. volevo fare ciò tramite la funzione ttt() che ovviamente sarà nel file js incluso e che non ho ancora scritto perchè non so come farla, ho provato con window.focus() ma non va. quindi l'unica cosa che non mi torna è come fare a riportare il focus sulla pagina da cui è stata aperta la popup, non vi metto il codice dei file inclusi perchè non penso siano utili per quello che mi serve, sono solo pieni di funzioni js...

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2012
    Messaggi
    25
    ho risolto con il window.opener

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 © 2026 vBulletin Solutions, Inc. All rights reserved.