Mi fa piacere trovare tuo riscontro.
Nota che funziona sia eventi["1/1"][0] che eventi["1/1"]["0"] cioè l' index numerico risponde anche come associative index
Poi, non so se stai proseguendo nel proposito, ma è possibile scrivere il sub-Array in una forma più snella, sulle corde della tua "improvvisazione":
Originariamente inviato da andmx
.. gli eventi del giorno separati da virgola e dentro a parentesi tonde
eventi["1/1"]=(concerto, torneo);
solo che devono impiegarsi parentesi quadre; e ovviamente, gli apici.
Questa potrebbe quindi diventare una forma (literal Array) più "confortevole" per l' Utente che deve compilare l' Array degli eventi:
codice:
eventi["1/1"] = [ "ore 10:00 - Sveglia all' alba",
"ore 12:45 - La grande abbuffata",
"in serata - Proiezione de: \"La corazzata Potiomkj\"" //(1)
];
eventi["2/1"] = [ "L' altra giornata, vedremo" //(2)
];
- Può andare a capo tra un articolo e l' altro (alla virgola);
- Non deve però scapparci la virgola dopo l' ultimo articolo;
- Non omettere la chiusura ]; quadra puntovirgola;
- Può immettere ogni carattere, pezzi di codice HTML compresi, ma se occorre replicare l' apice "tecnico" per esigenze di testo, va "escapato" col back slash (1). L' uso alternato di singoli e doppi apici, non comporta interferenza (2).
... che lui modifichi in modo appropriato solo il .txt)
Il blocco si compila sì come un file di testo, ma va salvato con estensione .js non .txt
databaseeventi.js
L' inizializzazione dell' Array possiamo lasciarla (sopra !) nel Documento principale; dove quindi avremo:
codice:
<html>
<head>
<script type="text/javascript">
var eventi = new Array();
//eventuale altro JavaScript
</script>
<script type="text/javascript" src="databaseeventi.js"></script>
<script type="text/javascript">
//funzioni JS necessarie
function accediAlDato(){
theForm = document.forms["main"];
one = theForm.first.value;
two = theForm.second.value;
alert(eventi[one][two]);
}
</script>
</head>
e prova a concludere con questo nel BODY:
codice:
<body>
<form name="main">
<div align="center"><h2>
eventi[<input name="first" type="text" size="2">][<input name="second" type="text" size="2">]
<input type="button" value="richiama" onclick="accediAlDato();"></h2>
</div>
</form>
</body>
</html>
Nelle textbox immetterai 1/1 e non "1/1", e 0, indifferentemente che trattasi di associativo o numerale; per questo ti ho fatto quella nota in apertura, dai campi INPUT JavaScript raccoglie i VALUE come stringhe, quindi elabora come:
eventi["1/1"]["0"]