Autocomplete con file csv - Domande in un unica pagina

More
1 month 1 day ago #160718 by AlCor
AlCor created the topic: Autocomplete con file csv - Domande in un unica pagina
Salve a tutti
mi rivolgo per la prima volta a questo forum ed anticipo che, giusto per mettere le mani avanti ( :) ) non conosco molto i meandri di javascript e di jquery, ma con un po' di pazienza e l'aiuto dei workaroud sono riuscito a risolvere il mio problema: in una domanda (Regione, con codifica da 1 a 20) richiedo la regione di residenza, nell'altra incollo il codice qui sotto (paro paro al workaround) e magicamente mi carica il file con i soli comuni della Regione selezionata (20 file csv caricati in un modello personale).

<script type="text/javascript" charset="utf-8">
$(document).ready(function() {
var qID = {QID};
var surveyRoot=location.pathname.split('index.php')[0];
var url=surveyRoot+'upload/templates/Al001/csv/r{Regione.code}.csv';
var testArr = new Array();
$.get(url,function(data){
fullArray = $.csv.toArrays(data);
$(fullArray).each(function(i, item){
testArr.push(item[0]);
});

$('#question'+qID+' input.text').autocomplete({
source: testArr
});
});
});
</script>

Lo script funziona, ma quando imposto l'indagine su "Visualizza tutte le domande su una sola pagina" (e sono costretto a farlo...), lo script non funziona più. Se ho ben capito il motivo, leggendo sui vari forum, è che lo script viene caricato con la pagina, ed ovviamente la domanda Regione non è ancora valorizzata. Mi servirebbe qualcosa che mi faccia caricare lo script solo dopo che è stata valorizzata la regione. Ho fatto qualche timida prova con l'istruzione "focus" sulla domanda "comune" (carica lo script solo quando entro nel campo "comune", perciò Regione è valorizzata), ma il tutto è al di là delle mie conoscenze...

Qualcuno mi potrebbe dare un suggerimento? Oppure dirmi se il ragionamento che ho fatto è sbagliato...


Grazie per l'attenzione
Alessandro

Please Log in to join the conversation.

More
1 month 21 hours ago #160757 by lfanfoni
lfanfoni replied the topic: Autocomplete con file csv - Domande in un unica pagina
Ho l'impressione che questa soluzione faccia più al tuo caso, sostituendo il filtro di provincia con quello di regione come serve a te:
www.limesurvey.org/forum/can-i-do-this-w...te-external-csv-file

Please Log in to join the conversation.

More
1 month 20 hours ago #160759 by AlCor
AlCor replied the topic: Autocomplete con file csv - Domande in un unica pagina
Grazie mille, vado a studiare...

Un saluto
A.

Please Log in to join the conversation.

More
1 month 20 hours ago #160761 by lfanfoni
lfanfoni replied the topic: Autocomplete con file csv - Domande in un unica pagina
Comunque stavo giusto ragionando con un collega che secondo me ha poco senso fare un autocomplete del comune scegliendo prima la regione o la provincia o qualsiasi altra cosa. I nomi ufficiali dei comuni italiani sono univoci, e al massimo ci potrsti mettere in fondo una sigla della provincia, quindi forse il csv potrebbe essere unico per tutte le regioni, e non avresti il problema della scelta
The following user(s) said Thank You: AlCor

Please Log in to join the conversation.

More
1 month 20 hours ago #160762 by AlCor
AlCor replied the topic: Autocomplete con file csv - Domande in un unica pagina
FUNZIONA!!!
Certo, non ho capito un acca dello script inserito, ci perderò un bel po' di sonno.

Grazie mille...
...soprattutto perché non avevo pensato a cercare nel forum in inglese.
A.

Please Log in to join the conversation.

More
1 month 5 hours ago #160770 by lfanfoni
lfanfoni replied the topic: Autocomplete con file csv - Domande in un unica pagina
Se tutti postassero qui le soluzioni trovate adattate alle nostre problematiche italiane, come nel caso dell'automplete sui comuni italiani, sarebbe tutto più facile.
Magari un contributo puoi darlo anche tu, raccontandoci qui per iscritto come hai risolto e il modo per implementare la soluzione

Please Log in to join the conversation.

More
1 day 22 hours ago #161769 by AlCor
AlCor replied the topic: Autocomplete con file csv - Domande in un unica pagina - How I did it
Come correttamente suggerito, provo a condividere con gli altri del forum in italiano la strada che ho preso rispetto al suggerimento precedentemente fornito.

La mia esigenza era di avere una domanda sulla regione di residenza (su cui avevo quote regione x sesso x classe di età da rispettare e mi serviva quindi la regione nella consueta forma di lista/radio button) e di lavorare con tutte le domande su un unica pagina.

Dai suggerimenti forniti nel forum sarebbe stata prevista un'ulteriore domanda sulla provincia e la successiva sul comune, tutt'e due con autocomplete, ma mi sembrava una cosa troppo pesante per i rispondenti. Tra l'altro, se la provincia non viene scritta regolarmente, l'istruzione di select sulla provincia non popola correttamente l'autocomplete dei comuni e, a cascata, niente codici di provincia e comune.

Riconosco che la soluzione è forse più macchinosa dell'ottima indicazione fornita, ma è maggiormente rispondente alle mie necessità, che potrebbero essere anche quelle di qualcuno di voi.

Per lavorare correttamente, il file di gruppo che allego (chiamato "Socio Demo") deve poter richiamare, dal template creato per l'indagine, il file "jquery.csv.js" ed il file "Comuni2017.csv", versione aggiornata dell'elenco comuni di Istat.
Per mia abitudine ho usato come separatore dei campi del csv il ";", per cui anche il "jquery.csv.js" che utilizzo è stato configurato le usare il ";".
Chi volesse lasciare intatto il proprio jquery.csv dovrà banalmente aprire "Comuni2017.csv" e sostituire tutti i ";" con la ",".

Nel file di gruppo non viene mai richiamato apertamente "jquery.csv.js" in quanto ho modificato i file del template personalizzato per fare la chiamata "a monte" (dentro startpage.pstpl).

Nel file di gruppo allegato ho lasciato anche una proposta di ricodifica in automatico della classe di età partendo dall'anno di nascita. Anche questo, che si risolve abbastanza agevolmente se lavoro con una domanda per pagina, quando ho tutto su una pagina mi creava qualche problema (ma magari sbagliavo qualcosa). Ho lasciato anche questa proposta perché qualunque suggerimento su come migliorarlo sarà per me ben accetto.

Un saluto a tutti
A.
Attachments:
The following user(s) said Thank You: lfanfoni

Please Log in to join the conversation.

Start now!

Just create your account and start using Limesurvey today.

Register now
Join our Newsletter!