Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. passare valori tra le pagine
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • M
      madai User Attivo • ultima modifica di

      @zwack said:

      mi dice che alla riga incriminata è "previsto oggetto" (?) non riesco proprio a vedere cosa non va.

      È un errore javascript. Facciamo una cosa all volta 🙂 Elimina il javascript.

      Cmq ti consiglio di inserire l'include nell'head non nel body.

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • Z
        zwack User • ultima modifica di

        i valori mi passano regolarmente (ho fatto una prova con campi visibili ed è tutto ok) ho bisogno della funzione, che sta tra i tag head (errore di copia e incolla qui), perchè il form effettua una somma e questa è a posto perchè sulla maschera intera funziona bene. dov'è l'inghippo?
        :bho:

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • M
          madai User Attivo • ultima modifica di

          incollaci la funzione fun()

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • L
            legolas Moderatore • ultima modifica di

            saremmo un tantino OT, comunque sia facci vedere la funzione javascript, almeno vediamo dove sta l'errore

            sarò sotto l'ombrellone ma CONTACI.
            Ci conti si 😄

            Ciao :ciauz: :ciauz:

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • Z
              zwack User • ultima modifica di

              eccola:

              function fun() {
              var v1=f.t1.value;
              var v2=f.t2.value;
              var v3=f.t3.value;
              if (v1=="" || v2=="" || v3=="") return;
              v1=parseInt(v1);
              v2=parseInt(v2);
              v3=parseInt(v3);
              f.t4.value=v1+v2+(v3-40);
              }
              come ti dicevo nel form originale (quello che devo suddividere) mi funziona regolarmente, qui non capisco proprio come mai non vuole saperne.
              grazie.

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • L
                legolas Moderatore • ultima modifica di

                Io la cambierei così:

                
                function fun() {
                  var v1=document.getElemtById("t1").value;
                  var v2=document.getElemtById("t2").value;
                  var v3=document.getElemtById("t3").value;
                  if (v1=="" || v2=="" || v3=="") return;
                  v1=parseInt(v1);
                  v2=parseInt(v2);
                  v3=parseInt(v3);
                  document.getElemtById("t4").value=v1+v2+(v3-40);
                }
                
                
                

                E la richiami semplicemente
                onquellochetipare = "javascript: fun();"

                ah, mi sono accorto ora di una cosa
                nalla pagina 1 questa funzione non la puoi richiamare perche il campo t3 e t4 non esiste, la puoi richiamare solo nella pag 2, al max puoi scrivere due funzioni diverse, oppure modificarla così:

                
                function fun(pag) {
                  if pag != ""{
                    var v1=document.getElemtById("t1").value;
                    var v2=document.getElemtById("t2").value;
                    if pag == 2 {
                      var v3=document.getElemtById("t3").value;
                      if (v1=="" || v2=="" || v3=="") return;
                    }else{
                      if (v1=="" || v2=="") return;
                    }
                    v1=parseInt(v1);
                    v2=parseInt(v2);
                    if pag == 2 {
                      v3=parseInt(v3);
                      document.getElemtById("t4").value=v1+v2+(v3-40);
                    }
                  }
                }
                
                
                

                Questa funzione funziona (scusate il gioco di parole) solo con 2 pagine per più pag ti tocca adattarla, puoi fare anche qualche cosa di più complesso, io ho un po' schematizzato
                Ciao

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • M
                  madai User Attivo • ultima modifica di

                  getElemtById

                  getElementById 🙂

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • Z
                    zwack User • ultima modifica di

                    provato nuovo codice suggerito, ma anche così mi restituisce lo stesso errore, sono allo sconforto.
                    😢

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • Z
                      zwack User • ultima modifica di

                      :yuppi: :yuppi:
                      fatto! funziona! era un banale orrore di ortografia.
                      vi ringrazio tutti per la pazienza e la gentilezza, siete grandi.
                      ciao
                      :fumato:

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • L
                        legolas Moderatore • ultima modifica di

                        @madai said:

                        getElemtById

                        getElementById 🙂

                        il copia incolla può essere fatale :fumato: :fumato:

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • M
                          madai User Attivo • ultima modifica di

                          visto che ti funziona lascialo stare così ma visto che l'ho scritto ti posto anche questo codice che potresti riutilizzare tale e quale in tutte le pagine in quanto controlla l'esistenza del campo nella pagina.

                          (non l'ho testata):

                          
                          function fun() {
                            var tot;
                            var v = new Array();
                            for &#40;var i=1; i < 4; i++&#41; &#123;
                              if &#40;document.getElemtById&#40;"t"+i&#41; != undefined&#41; &#123;
                                v&#91;i&#93; = document.getElemtById&#40;"t"+i&#41;.value;
                              &#125;
                              if &#40;v&#91;i&#93;==""&#41; return;
                              tot = v&#91;i&#93; + tot;
                            &#125;
                            document.getElemtById&#40;"t4"&#41;.value=tot;
                          &#125;
                          
                          
                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • Z
                            zwack User • ultima modifica di

                            bello, ma ci ho capito poco saresti così gentile da spiegarmi, come funziona?
                            grazie.

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • M
                              madai User Attivo • ultima modifica di

                              function fun() {
                              var tot;
                              var v = new Array();
                              for (var i=1; i < 4; i++) { //ciclo for: il blocco di codice che va dalla riga seguente in poi fino alla riga tot = v* + tot; verrà ripetuto 4 volte, ad ogni passaggio i verrà incrementato di 1
                              if (document.getElemtById("t"+i) != undefined) { // controllo che il campo con ID=ti dove al psto di i ci sarà un numero compreso tra 1 e 4. Se esistesse memorizzo il relativo valore nel seguente elemento dell'array
                              v* = document.getElemtById("t"+i).value;
                              }
                              if (v*=="") return;
                              tot = v* + tot;
                              }
                              document.getElemtById("t4").value=tot;
                              }

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • Z
                                zwack User • ultima modifica di

                                grande madai, sono riuscito a far funzionare anche questa, per piccole che siano, queste si, che son soddisfazioni!
                                di nuovo grazie di tutto a tutti.

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • M
                                  madai User Attivo • ultima modifica di

                                  bravo zwack! 🙂

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  Caricamento altri post
                                  Rispondi
                                  • Topic risposta
                                  Effettua l'accesso per rispondere
                                  • Da Vecchi a Nuovi
                                  • Da Nuovi a Vecchi
                                  • Più Voti