Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2015
    Messaggi
    39

    usare javascript in un file incluso

    Ciao a tutti
    ho dei dati che mi arrivano in GET
    nomesito.it/pagina?variabile=1

    dentro nomesito.it/pagina ho un js
    codice:
    <script> 
        jQuery(function(){
          jQuery("#includedContent").load("/cartella/prova.html"); 
        });
    </script> 
    <div id="includedContent"></div>
    in prova vorrei recuperare il valore di variabile ma non riesco
    (se chiamo direttamente prova.html funziona)

    ho provato anche creando prova.php e stesso risultato. da sola funziona ma inclusa no.
    come mai? cosa posso fare?

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2015
    Messaggi
    39
    in prova.html
    ho messo questo codice
    codice:
    <script type="text/javascript">
    function parseGetVars()
    {
      // creo una array
      var args = new Array();
      // individuo la query (cioè tutto quello che sta a destra del ?)
      // per farlo uso il metodo substring della proprietà search
      // dell'oggetto location
      var query = window.location.search.substring(1);
      // se c'è una querystring procedo alla sua analisi
      if (query)
      {
        // divido la querystring in blocchi sulla base del carattere &
        // (il carattere & è usato per concatenare i diversi parametri della URL)
        var strList = query.split('&');
        // faccio un ciclo per leggere i blocchi individuati nella querystring
        for(str in strList)
        {
          // divido ogni blocco mediante il simbolo uguale
          // (uguale è usato per l'assegnazione del valore)
          var parts = strList[str].split('=');
          // inserisco nella array args l'accoppiata nome = valore di ciascun
          // parametro presente nella querystring
          args[unescape(parts[0])] = unescape(parts[1]);
        }
      }
      return args;
    
    
    var get = parseGetVars();
    var error = get['errore'];
    if (error=='1') {
    document.write('<h3>errore di tripo 1.</h3>');
    }
    else if (error=='2') {
    document.write('<h3>errore di tripo 2.</h3>');
    }
    else {
    document.write('<h3>altro errore</h3>');
    }
    }</script>
    se chiamo miosito.it/cartella/prova.html?errore=1
    funziona
    se invece chiamo miosito.it/pagina?errore=1
    niente


  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,010
    io non ho capito cosa sarebbe questa una url un percorso o cosa? miosito.it/pagina?errore=1. Comunque qualunque cosa sia se lanciandola nel browser la interpreta/legge, la leggerà/interpreterà anche load di jquery altri menti no.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2015
    Messaggi
    39
    Ciao
    miosito.it/pagina?errore=1
    è l'url della pagina con l'include
    dentro la quale viene richiamata la pagina
    /cartella/prova.html


    dentro prova.html c'è lo script che dovrebbe leggere il GET (?errore=1) e scrivendo l'url miosito.it/cartella/prova.html?errore=1 funziona

    ma se nel browser scrivo il miosito.it/pagina?errore=1 non funziona
    Ultima modifica di spakiz; 27-04-2018 a 09:25

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2015
    Messaggi
    39
    ah... in console quando carico
    miosito.it/pagina?errore=1
    mi scrive
    TypeError: strList[str].split is not a function

    che vuol dire?

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2015
    Messaggi
    39
    Avevo provato a mettere il codice nella pagina dove c'era l'include e non funzionava lo stesso allora ho cambiato codice.

    ecco quello che funziona (sempre inserendolo nella pagina contenitore, niente include)
    codice:
    <script type="text/javascript">
    var getUrlParameter = function getUrlParameter(sParam) {
        var sPageURL = decodeURIComponent(window.location.search.substring(1)),
            sURLVariables = sPageURL.split('&'),
            sParameterName,
            i;
    
    
        for (i = 0; i < sURLVariables.length; i++) {
            sParameterName = sURLVariables[i].split('=');
    
    
            if (sParameterName[0] === sParam) {
                return sParameterName[1] === undefined ? true : sParameterName[1];
            }
        }
    };
    
    
    
    
    var error = getUrlParameter('errore');
    if (error=='1') {
    document.write('<h3>errore di tripo 1.</h3>');
    }
    else if (error=='2') {
    document.write('<h3>errore di tripo 2.</h3>');
    }
    else {
    document.write('<h3>Altro errore</h3>');
    }
    
    
    
    
    </script>
    comunque includendolo funziona ma mi restituisce solo l'H3 senza nient'altro, come mai?

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,010
    Quote Originariamente inviata da spakiz Visualizza il messaggio
    comunque includendolo funziona ma mi restituisce solo l'H3 senza nient'altro, come mai?
    codice:
    if (error==1)
    prova a cambiare gli if togliendo gli apici '' confrontando dei numeri invece che delle stringhe.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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