In un test a risposta multipla vorrei mostrare (in una nuova pagina) i risultati sotto forma di grafico a barre.
Premesso che non voglio usare programmi lato server, ho adattato degli script che mi risolvono la prima parte (mandare oggetti da una pagina all'altra) e l'ultima parte (creare un grafico con i risultati in percentuale).
Mi serve un sistema per legare le due cose.
Nella pagina col questionario c'è questa funzione
Nella pagina ricevente c'è una prima funzione che crea un array di oggetti col nome MySearch, tipo questocodice:function nextpage() { // Mando totale 1,2,3 etc a elemento MyValue del seguente form. window.location.href = "send.html?MyValue.value='"+document.getElementById('totale1').value+ "'&MyTest.value='"+document.getElementById('totale2').value+ "'&MyTesta.value='"+document.getElementById('totale3').value+"'"
myValue=AEIOU
Da lì, tramite un loop for e un eval vengono restituiti totale1, totale2 etc
e i risultati sono mostrati in 3 text box. Fin qui tutto bene.codice:function getFromSearch() { var x = 0 mySearch = location.search.substr(1).split("&") for (x=0;x<=mySearch.length;x++) { eval("document.forms.myNewForm."+mySearch[x]) } }
Ho trovato infine uno script che prende i dati da un array e li mostra sotto forma di grafico.
Il problema è che si parte da un array multi-dimensionale!!!
La mia domanda è: anzichè inserire "a mano" i dati nell'array come si fa a creare due arraycodice://DEFINE GRAPH VALUES [Item name, absolute value] var graphx=new Array() graphx[0]=["RAI1",60] graphx[1]=["Canale5",24] graphx[2]=["Sky",52]
uno che contenga il nome dell'item (Rai1,Canale5...)
e l'altro che contenga IN AUTOMATICO i valori provenienti da getFromSearch()
e riunirli in un unico array multi-dimensionale
var graphx=new Array()
da lì in avanti c'è la funzione che crea il grafico...
Concettualmente mi sembra semplice, ma non so trovare una soluzione. PLEASE HELP!

Rispondi quotando