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

    Passaggio di dati tra pagine html

    Ciao a tutti
    Sto sviluppando una applicazione JavaScript utilizzando Jquery.
    Ecco la mia situazione d'uso.
    L'utente inserisce dei dati attraverso una form. Una volta inseriti creo un oggetto associato e ne estraggo il corrispondente JSON. Se lavoro su oggetti semplici non ci sono problemi.
    Esempio
    var person= new Object()
    person.name = document.getElementById("name").value;
    person.surname = document.getElementById("surname").value;
    ...
    jsonText = JSON.stringify(person);

    Il difficile viene nel momento in cui devo generare oggetti complessi cioè oggetti che hanno al loro interno altri oggetti e non semplici stringhe.
    Per risolvere ciò ho pensato di rimandare l'utente ad un'altra pagina html in cui è presente un'altra form con i campi relativi all'altro oggetto ad esempio "indirizzo".
    In questa nuova pagina mi comporto perfettamente come in quella principale, ciòè creo l'oggetto associato ai valori inseriti nella form ed estraggo il JSON.
    Una volta estratto lo mando alla pagina principale e a partire da questo riesco a ricreare l'oggetto "indirizzo" da impostare nell'oggetto persona.

    Ora volevo chiedervi come fare a ritornare alla pagina principale il JSON dell'indirizzo che mi sono calcolato?
    Pensate che esistano metodi più semplici per fare ciò di cui ho bisogno?
    Grazie

  2. #2
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669

    Re: Passaggio di dati tra pagine html

    Originariamente inviato da Menesbatto
    Il difficile viene nel momento in cui devo generare oggetti complessi cioè oggetti che hanno al loro interno altri oggetti e non semplici stringhe.
    Scusa, in che consisterebbe la difficoltà?

    Originariamente inviato da Menesbatto
    Ora volevo chiedervi come fare a ritornare alla pagina principale il JSON dell'indirizzo che mi sono calcolato?
    Pensate che esistano metodi più semplici per fare ciò di cui ho bisogno?
    Grazie
    Secondo me non serve… cmq, se proprio ti occorre…: https://developer.mozilla.org/en/DOM...amed_oGetVars:


  3. #3
    grazie per la risposta!
    ho guardato il link che mi hai postato, se non sbaglio quella funzione è utile nel momento in cui ho una risposta del tipo www.ciao.com?att1=val1&att2=val2 che mi viene trasformato in un oggetto con att1 e att2 impostati ai corrispondenti valori.
    Il fatto è che nel mio caso la profondità di oggetti contenuti all'interno di altri può essere anche elevata, quindi ad esempio Persona->Indirizzo->Palazzina->Scala->Interno (con Persona, Indirizzo, Palazzina e Scala a loro volta oggetti). Quindi ho pensato che farmi restituire una stringa JSON sarebbe stata la migliore scelta.
    Precisamente una volta che ho calcolato tale stringa JSON, come faccio a passarla alla pagina principale e ritrovarmi in questa? Vorrei cioè che nel momento in cui viene effettuato il click sul submit della form dell'indirizzo (o su un altro pulsante è uguale) mi ritrovi nella pagina principale con l'URL contenente anche la stringa JSON.
    Una volta che ho tale URL allora andro' a reperire l'informazione di interesse come nello script che mi hai segnalato: window.location.search per poi parsarmelo con un metodo che mi restituisce l'oggetto a partire dal Json.

  4. #4
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Converti il tutto in JSON nella pagina di arrivo, non in quella di partenza. Immaginiamo che paginaA.html contenga un form che invia tutti i dati in paginaB.html (con metodo GET e senza bisogno di javascript a meno che tu non voglia fare un controllo su ciò che l'utente inserisce). paginaB.html conterrà quello script che ti ho girato che creerà un oggetto di nome oGetVars (ma il nome lo puoi cambiare) contenente tutte le variabili inviate in un unico livello. oGetVars sarà il tuo oggetto di partenza. Le proprietà che vorrai annidare in un oggetto-figlio di oGetVars le estrarrai da lì e le eliminerai da oGetVars con delete oGetVars.tuaProprieta. Semplice…

  5. #5
    L'idea di creare l'oggetto solo alla fine in effetti mi farebbe risolvere il problema di "restituire il comando alla pagina principale con URL modificato". Pero' nel mio caso non so se possa andare bene come soluzione, mi spiego:nella soluzione che mi hai consigliato dovrei avere in paginaA.html una form che mi faccia inserire tutti i valori degli attributi di tutti i sotto-oggetti! Ciò non è possibile in quanto una persona potrebbe avere più indirizzi mentre un'altra uno solo! Non so a priori il numero di indirizzi che una persona avrà! E per organizzare meglio l'attività di immissione dei dati avevo pensato a suddividere su più form presenti su diverse pagine questa operazione. Una volta che tale immissione di dati è terminata e il macro oggetto è creato tramite la stringa JSON associata manderei tutto al server!

  6. #6
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Non vedo perché dovresti sapere a priori quanti indirizzi una persona abbia… Tu manda tutti i dati grezzi alla seconda pagina… lì avrai il potere assoluto di scremarli a piacere lavorando sull'oggetto oGetVars.

  7. #7
    allora forse non ho ben capito la soluzione che mi proponevi!!
    ti chiedo questa e poi mi fermo che ti sto monopolizzando il pomeriggio! xD
    Come li ottengo i dati grezzi di cui parli? Con una grande form contenuta in un'unica pagina?
    Oppure posso usare form contenute su più pagine (una per persona una per indirizzo ecc)? in questo secondo caso come scambiare i dati che inserisco in una form con le altre?
    Grazie tanto per l'aiuto!

  8. #8
    Buongiorno ragazzi!
    Qualche idea alternativa per passare informazioni tra le varie pagine?!?!
    scusate l'insistenza ma sono bloccatissimo!

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.