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

    settare il nome delle variabili dinamicamente

    è possibile settare il nome di una variabile in maniera dinamica, mi spiego meglio, diciamo che ottenco una stringa di questo tipo: "ciccio=25"

    esegui uno split della stringa in un vettore

    a questo punto vorrei valorizzare la variabile 'ciccio' a 25 cioè
    nome_variabile_inizializzata = vettore[0]
    valore_variabile_inizializzata = vettore[1]

    Grazie a tutti
    Riccardo

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    window[vettore[0]]=vettore[1]

    se vuoi evitare possibili sovrascritture di variabili già esistenti puoi testarla con
    codice:
    if(typeof(window[vettore[0]])=='undefined') window[vettore[0]]=vettore[1]
    else alert('la variabile '+window[vettore[0]]+' è già settata')
    ciao

  3. #3
    Direi che è anche meglio di quello che immaginavo, grazie mille

  4. #4
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    di nulla,

  5. #5

    anche se un po' macchinoso sembra funzionare

    Ecco lo scopo della mia domanda...

    Poniamo il caso di avere una paginetta semplice semplice così composta:
    codice:
    <form method="GET" action="ricevente.htm">
      <p align="center"><input type="text" name="T1" size="20">
    <input type="text" name="T2" size="20"></p>
      <p align="center"><input type="submit" value="Invia" name="B1"><input type="reset" value="Reimposta" name="B2"></p>
    </form>
    e la relativa pagina "ricevente.htm" con questo scriptino:

    codice:
    <script>
    alert(document.location.href)
    if (document.location.href.indexOf('?')>-1) {
    	vettore_variabili = document.location.href.split("?")
    	if (vettore_variabili[1].indexOf('%26')>-1) {
    		vettore_valori = vettore_variabili[1].split("%26")
    		for (v=0 ; v<vettore_valori.length ; v++) {
    			vettore = vettore_valori[v].split("=")
    			if (typeof(window[vettore[0]])=='undefined') {
    				window[vettore[0]]=vettore[1]
    				alert('la variabile '+vettore[0]+' vale '+ window[vettore[0]])
    			} else {
    				alert('la variabile '+vettore[0]+' è già settata')
    			}
    		}
    	} else if (vettore_variabili[1].indexOf('&')>-1) {
    		vettore_valori = vettore_variabili[1].split("&")
    		for (v=0 ; v<vettore_valori.length ; v++) {
    			vettore = vettore_valori[v].split("=")
    			if (typeof(window[vettore[0]])=='undefined') {
    				window[vettore[0]]=vettore[1]
    				alert('la variabile '+vettore[0]+' vale '+ window[vettore[0]])
    			} else {
    				alert('la variabile '+vettore[0]+' è già settata')
    			}
    		}
    	} else {
    		vettore = vettore_variabili[1].split("=")
    		if (typeof(window[vettore[0]])=='undefined') {
    			window[vettore[0]]=vettore[1]
    		} else {
    			alert('la variabile '+window[vettore[0]]+' è già settata')
    		}
    		alert("La variabile prova vale " + prova)
    	}
    }
    </script>
    ancora un po' da ottimizzare, sembra possibile leggere e inizializzare variabili passate da una pagina html all'altra.

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