Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente bannato
    Registrato dal
    Nov 2004
    Messaggi
    241

    Problema inviando una form in automatico

    avendo la necessità di inviare una serie di variabili di tipo nascosto uso questo script:
    codice:
       window.onunload = function() {
         if(document.getElementById) {
            document.getElementById('nomeForm').submit();
         }
       }
    e nel form non specifico nessun action.

    nei test tutto ha funzionato perfettamente, solo che poi mi sono accorto che qualunque link si clicchi va a finire sempre sulla stessa pagina...
    evidentemente essendo il submit l'ultima azione che esegue reindirizza a quella pagina, ma non essendo specificato niente torna alla stessa pagina...
    specificare l'actione non si può perchè altrimenti con qualsiasi link andrebbe a quell'indirizzo...



    E' possibile intercettare l'indirizzo della pagina che si sta cercando di caricare?
    in questo modo potrei inserirlo come proprietà del form una riga prima di eseguire il submit... speriamo...

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    L'invio di un form ha come conseguenza la risposta del server... che spedisce una pagina.

    Ovviamente questa pagina restituita deve essere ospitata da una finestra ricevente... e non avendo specificato un target alternativo verra' visualizzata nella finestra corrente.

    Il link cliccato non sortisce risultati perche' l'esito dell'operazione contrasta col risultato dello script... evidentemente quest'ultimo ha priorita' rispetto all'azione del link.

    Appurata la necessita' di due fienestre riceventi, puoi forse utilizzare due frames, di cui uno nascosto, per accogliere le diverse risposte.... ma devi rivedere la logica della tua applicazione.

    E' possibile intercettare l'indirizzo della pagina che si sta cercando di caricare?
    in questo modo potrei inserirlo come proprietà del form una riga prima di eseguire il submit... speriamo...
    questa non l'ho proprio capita... :master:

    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

  3. #3
    Utente bannato
    Registrato dal
    Nov 2004
    Messaggi
    241
    non ne so tantissimo di javascript... :master:

    è possibile istruire la funzione che invia il form con un'action ricavata dall'indirizzo della pagina che si vuole caricare?


    oppure ancora meglio, c'è un altro metodo per inviare delle variabili con metodo post?

  4. #4
    Utente bannato
    Registrato dal
    Nov 2004
    Messaggi
    241
    qualcosa del tipo:
    codice:
       window.onunload = function() {
         if(document.getElementById) {
            document.getElementById('nomeForm').action = il nome del link che si sta cariando;
            document.getElementById('nomeForm').submit();
         }
       }

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Link di esempio...

    <script>
    function invia(dove) {
    if(document.getElementById) {
    document.getElementById('nomeForm').action = dove;
    document.getElementById('nomeForm').submit();
    return false;
    }
    return true;
    }
    </script>

    Se proprio devi gestire anche la chiusura della finestra e' da modificare...

    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

  6. #6
    Utente bannato
    Registrato dal
    Nov 2004
    Messaggi
    241
    grazie, ti assicuo che è un ottimo passo in avanti

    però ancora ho un problema, la maggior parte dei link presenti nella pagina sono generati dinamicamente via asp e sarebbe necessario andare a modificare un'ira di dio di codice...

    c'è un modo per arrivare allo stesso effetto senza dover modificare i link?

    ma proporio non c'è una proprietà di javascript che permette di sapere quale link sta cliccando l'utente?

  7. #7
    Utente bannato
    Registrato dal
    Nov 2004
    Messaggi
    241
    Dopo un po sono arrivato a questo:
    codice:
       window.onunload = function() {
         if(document.getElementById) {
            document.getElementById('nomeForm').action = window.event.srcElement;
            document.getElementById('nomeForm').submit();
         }
       }
    adesso va alla pagina giusta, ma non mi invia le variabili :master:

    ma che roba è?

  8. #8
    Utente bannato
    Registrato dal
    Nov 2004
    Messaggi
    241
    falso allarme...

    semplicemente lo script di sopra non è corretto...

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