Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1
  • 2

TOPIC: Scelta (testi) e dropdown

Scelta (testi) e dropdown 1 year 8 months ago #92282

  • decasys
  • decasys's Avatar
  • OFFLINE
  • Fresh Lemon
  • Posts: 9
  • Thank you received: 2
  • Karma: 1
Ciao a tutti, volevo chiedervi se conoscete un trucchetto per poter avere in una domanda di tipo "Scelta (testi)" una dropdown, in modo da ottenere, in pratica, una sorta di tabella con uno o più menù a tendina.
es.
Nome | Cognome | Sesso | Tipo di contratto
libero | libero | dropdown M/F | dropdown determinato/indeterminato/ecc...

grazie mille :)
Ciao
The administrator has disabled public write access.

Re: Scelta (testi) e dropdown 1 year 8 months ago #92286

  • lfanfoni
  • lfanfoni's Avatar
  • OFFLINE
  • Gold Lime
  • Posts: 303
  • Thank you received: 46
  • Karma: 12
Puoi provare questo:
docs.limesurvey.org/tiki-index.php?page=...stion_types_in_array
Giocando con il javascript credo sia possibile anche rendere dinamico il numero di righe da compilare.
Facci sapere se ci riesci.
Last Edit: 1 year 8 months ago by lfanfoni.
The administrator has disabled public write access.
The following user(s) said Thank You: decasys

Scelta (testi) e dropdown 1 year 6 months ago #94562

  • decasys
  • decasys's Avatar
  • OFFLINE
  • Fresh Lemon
  • Posts: 9
  • Thank you received: 2
  • Karma: 1
Scusa il ritardo :)
Si, tutto liscio come l'olio. Ho dovuto usare un altro template rispetto quello che avevo personalizzato (con più tempo avrei potuto adattarlo, ma tant'è).

Grazie di nuovo :)
Ciao,
Alberto
The administrator has disabled public write access.

Scelta (testi) e dropdown 1 year 6 months ago #94602

  • lfanfoni
  • lfanfoni's Avatar
  • OFFLINE
  • Gold Lime
  • Posts: 303
  • Thank you received: 46
  • Karma: 12
Se non viola troppo la "riservatezza aziendale", potresti postare la soluzione implementata, allegando magari l'export della domanda o del gruppo?
The administrator has disabled public write access.

Scelta (testi) e dropdown 1 year 6 months ago #94611

  • decasys
  • decasys's Avatar
  • OFFLINE
  • Fresh Lemon
  • Posts: 9
  • Thank you received: 2
  • Karma: 1
Ho seguito la soluzione del tuo link, adattando il numero di righe e colonne e sistemando un filo le dimensioni delle colonne (da li probabilmente il problema di adattamento al template).
In pratica:
- Crei un gruppo di domande
- crei una prima domanda "boilerplate" (EN) o "visualizzazione testo" (IT)
- Invece di scrivere il testo della domanda, attivi la visualizzazione del codice sorgente (pulsante in alto a destra)
- copi all'interno il famoso javascript del link precedente (impostando il numero di righe e colonne desiderate in corrispondenza della riga "sideBySide")). Nel mio caso il codice è il seguente:
<script type="text/javascript" charset="utf-8">
 
	$(document).ready(function() { 
 
		// Call the "sideBySide" function with number of rows and columns
		sideBySide(10, 8, 1);   
    });
 
	function sideBySide(rows, columns, startQuestion) {
 
		/*********** 
		Display multiple questions side by side
		***********/
 
		if ($('div.qRow1').length == 0) {
 
			var rowNum = 0;
			var colNum = 1;
			var rowList = new Array(); 
 
			//////// Add question classes for later use ////////
 
			// Loop through all questions and add row and column specific classes
			$('div[id^="question"]').each(function(i) {
				if(i >= (startQuestion-1) && rowNum < rows) { // This IF condition only needed if there are questions following the "inline" questions
					$(this).addClass('qRow'+rowNum+'').addClass('qCol'+colNum+'').addClass('inlineQuestion');
					if(rowNum == 0 && colNum > 1) {
						$(this).addClass('columnLabel');
					}
					if(rowNum > 0 && colNum == 1) {
						$(this).addClass('rowLabel');
					}
					else if(rowNum > 0 && colNum > 1) {
						$(this).addClass('questionCell');
					}
					if(colNum == columns) {
						rowList.push('qRow'+rowNum+'');
						rowNum++;
						colNum = 1;
					}
					else {
						colNum++;
					}
				}
				else {
					$(this).addClass('normalQuestion');
				}
			}); 
 
			//////// Survey layout manipulation ////////
 
			// Fix the width of the survey
			$('table.outerframe').css({
				'width': '1300px'
			});
 
			// Wrap each "row" in a wrapper div
			$(rowList).each(function(i) {
				$('.'+this+'').wrapAll('<div id="inlineWrapper'+i+'" class="inlineRow" />');
			}); 
 
			// Style the wrapper divs
			$('.inlineRow').css({
				'width': '1400px',
				'margin': '0 auto 0 auto',
				'clear': 'both'
			});
			$( '.inlineRow:first' ).css({
				'margin-top': '10px'
			});
 
			// Get all the questions to sit politely side by side
			$( '.inlineQuestion' ).css({
				'float': 'left',
				'height':'41px',
				'overflow':'hidden',
				'margin-bottom': '-8px'    
			});
			$( '.inlineQuestion .questionhelp' ).hide();
			$( '.inlineQuestion .survey-question-help' ).parent().hide();
 
			// A little space under the last row
			$( '.inlineRow:last .inlineQuestion' ).css({
				'margin-bottom': '10px'
			});
 
			// Any questions not displayed inline (this is only needed if there are questions following the "inline" questions)
			$( '.normalQuestion' ).css({
				'clear': 'both'   
			});
 
			//////// Column manipulation ////////
 
			// Set the column widths - can be set individually if necessary
			// Must add up to less than 100%
			$( '.qCol1' ).css({
				'width': '2%'
			});
			$( '.qCol2, .qCol3, .qCol4, .qCol6' ).css({
				'width': '11%'
			});
 
			$( '.qCol5, .qCol7, .qCol8' ).css({
				'width': '18%'
			});
 
			//////// Question manipulation ////////
 
			// Hide the answer element in boilerplate questions
			$( 'div.boilerplate td.answer' ).parent().hide();
 
			// Hide the question text elements in non-boilerplate questions
			$('div.questionCell td.questiontext').parent().hide();
 
			// Push the question tables to 100%
			$( 'div.inlineRow table' ).css({
				'width': '100%'
			});
 
			// Get everything to line up nicely vertically
			$( '.inlineQuestion td.questiontext, .inlineQuestion td.answer p' ).css({
				'text-align': 'center'
			});
 
			// Adjust cell heights so everything lines up nicely horizontally
			$( '.inlineQuestion td.answer, .inlineQuestion td.questiontext' ).css({
				'height':'35px',
				'overflow':'hidden',
				'padding':'0.5em'
			});
			$( '#inlineWrapper0 .inlineQuestion' ).css({ 'height':'50px' });
			$( '#inlineWrapper0 td.questiontext' ).css({
				'height':'50px'
			});
 
			// Yes-no question styles
			$( 'div.yes-no ul' ).css({
				'text-align': 'center',
				'font-size': '90%',
				'margin': '0',
				'padding-bottom': '5px'
			});
			$( 'div.yes-no li' ).css({
				'padding-right': '1.5em'
			});
			$( 'div.yes-no td.answer' ).css({
				'padding-bottom': '0'
			});
 
			// Short-text question styles
			$( 'div.text-short input' ).css({
				'width': '125px',
				'margin-left': '0'
			});
 
			// Numeric question styles
			$( 'div.numeric input' ).css({
				'width': '125px',
				'margin-left': '0'
			});
			$( 'div.numeric p.tip' ).css({
				'display': 'none'
			});
 
			// Get rid of the margins around select boxes    
			$( 'p.question' ).css({ 'margin':'0' }); 
 
		}
	}
 
</script>
- Inizi a creare le varie domande. L'ordine di creazione sarà:
01 - Q1 | 02 - Q2 | 03 - Q3
04 - Q4 | 05 - Q5 | 06 - Q6
in pratica crei le varie colonne per ogni riga, quindi se hai 3 colonne, le prime 3 domande saranno la prima riga, le seconde 3 saranno la seconda riga e così via.

Allegato inserito :)

ciao ^_^
Attachments:
Last Edit: 1 year 6 months ago by decasys. Reason: precisazione
The administrator has disabled public write access.
The following user(s) said Thank You: lfanfoni

Scelta (testi) e dropdown 1 year 5 months ago #96045

  • decasys
  • decasys's Avatar
  • OFFLINE
  • Fresh Lemon
  • Posts: 9
  • Thank you received: 2
  • Karma: 1
Uhm...ho appena aggiornato il tutto dalla versione 1.92 all'ultima 2.00+ 130514 (procedura manuale, quindi ho eliminato tutti i file precedenti, riuppato la nuova versione e copiato la cartella upload) e il javascript non funziona più. Vedo tutte le domande di seguito e non più in forma di tabella.
Ho dimenticato di fare qualcosa?

Grazie :)
Ciao
The administrator has disabled public write access.

Scelta (testi) e dropdown 1 year 5 months ago #96060

  • lfanfoni
  • lfanfoni's Avatar
  • OFFLINE
  • Gold Lime
  • Posts: 303
  • Thank you received: 46
  • Karma: 12
Dovrebbe dipendere dal Filtro HTML per XSS, che per default viene messo a SI. Quello non fa eseguire i Javascript.
Lo trovi tra le impostazioni generali dell'utente admin, vedi allegato
Luciano
filtro_per_<a href='http://manual.limesurvey.org/Global_settings#Security'>XSS</a>.JPG
The administrator has disabled public write access.

Scelta (testi) e dropdown 1 year 5 months ago #96101

  • decasys
  • decasys's Avatar
  • OFFLINE
  • Fresh Lemon
  • Posts: 9
  • Thank you received: 2
  • Karma: 1
No, avevo già settato il filtro su OFF.
La cosa strana è che se inserisco questo:
<script type="text/javascript" charset="utf-8">
 
   $(document).ready(function() {
 
       alert("Test!");
 
   });
 
</script>
Vedo la scritta "Test" all'inizio della pagina ma non appare nessuna finestra (alert o messagebox).
Potrebbe essere utile inserire:

$config = false;

all'interno del file config.php contenuto in "application/config"?


altra cosa strana...non vedo nemmeno la barra che indica la percentuale di completamento del questionario, vedo solo i valori "0 100". Non so se la cosa possa essere collegata.
The administrator has disabled public write access.

Scelta (testi) e dropdown 1 year 5 months ago #96118

  • lfanfoni
  • lfanfoni's Avatar
  • OFFLINE
  • Gold Lime
  • Posts: 303
  • Thank you received: 46
  • Karma: 12
Si: è molto strana questa cosa del javascript che non ti fa visualizzare la finestrella di alert.
Ti capita su tutti i browser?
Comunque ti suggerisco di scrivere sul forum in inglese, citando la versione (e la build), mettendo lo script di prova che hai messo qui, e anche lo screenshot del risultato dell'esecuzione di quello script (la scritta "Test" nella pagina).
Di solito sono molto veloci a rispondere.
Gentilmente, posta la soluzione qui, se la trovi o qualcuno te la suggerisce.
The administrator has disabled public write access.
The following user(s) said Thank You: decasys

Scelta (testi) e dropdown 1 year 5 months ago #96198

  • decasys
  • decasys's Avatar
  • OFFLINE
  • Fresh Lemon
  • Posts: 9
  • Thank you received: 2
  • Karma: 1
Risolto ^_________^ (quando mi ci incaponisco...).

Quando ho aggiornato da 1.92 a 2.00, ho eliminato tutte le cartelle della 1.92, copiate tutte quelle della 2.00 e copiato le vecchie upload / tmp sovrascrivendo quelle appena create.
Non mi ero però limitato solo a questo...avevo copiato anche la cartella templates (avevo fatto, secoli fa, un paio di modifiche ad alcuni template, prima che migliorassero tutta la gestione di quest'ultimi e volevo portarmeli dietro).
Morale della favola?
Ricopiando la cartella templates della 2.0 funziona tutto...barra di completamento, script vari, ecc...
i vecchi template della 1.92 che avevo modificato non mi servono più, ho copiato un default, modificato come mi serviva e amen.

^__________^
The administrator has disabled public write access.
  • Page:
  • 1
  • 2
Time to create page: 0.125 seconds
Donation Image