Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    525

    passaggio variabili con location.replace

    Devo reindirizzare una pagina passandomi dei parametri da leggere nella pagina di destinazione col javascript:

    location.replace("my_file.php?from=2");

    Ma se nella pagina provo a leggere il valore della variabile from tramite un alert mi restituisce:

    from is not defined

    Come posso fare ??? Esiste qcosa che funzioni sia per Mozilla che Windows???

    Thxxx

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    La sintassi corretta (in JS standard) e`:
    window.location.replace("my_file.php?from=2");

    Poi dovresti specificare con quale script leggi la querysting nella pagina successiva. E` possibile che usi istruzioni proprietarie in quello script.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    525
    function get_parametro(numero){
    valore=1;
    var qst=location.search.substr(1);
    if (qst != ""){
    //alert(qst);
    dati=qst.split("=");
    var parametro = dati[0].substr(dati[0].indexOf("=")+1);
    var valore = dati[numero].substr(dati[numero].indexOf("=")+1);
    alert(parametro + "=" + valore);

    }

    return valore;
    }

    Ho fatto qsta funzione, che kiamandola così

    get_parametro(1)

    funziona restituendo il valore dell'unico parametro passato.....però volendo inserire nell'url più parametri, non so come ricavarne il valore. Pensavo ad una kiamata del tipo

    get_parametro(2)

    ma nn va...come faccio???

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2001
    Messaggi
    525

    risoltoooooo

    function get_parametro(numero){
    var qst=location.search.substr(1);
    var dati = new Array()
    dati=qst.split("&");
    var valore = dati[numero].substr(dati[numero].indexOf("=")+1);

    alert(valore);
    return valore;
    }

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Attenzione: davanti a location ci devi mettere sempre windows, altrimenti usi sintassi proprietarie.

    Ecco la funzione che risponde al nome del parametro:
    codice:
    function get_parametro(nome){
      if(!window.location.search) {
        alert("ERRORE - nessun parametro");
        return false;
      }
      var qst = window.location.search.substr(1);
      var dati = qst.split(/\&/);
      var valore = '';
      for (var i=0; i<dati.length; i++) {
        var tmp = dati[i].split(/\=/);
        if (tmp[0] == nome) {
          alert("trovato parametro "+nome" con valore "+tmp[1]);
          return tmp[1];
        }
      }
      alert("parametro "+nome+" non e` presente nella query");
      return false;
    }
    La chiamata sara`:
    get_parametro("nome_par");
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.