Willkommen, Gast
Benutzername: Passwort: Angemeldet bleiben:

THEMA: Coloriage réponse dans un tableau

Coloriage réponse dans un tableau 8 Monate 1 Woche her #98880

  • titoun31
  • titoun31s Avatar
  • OFFLINE
  • Expert Lime
  • Beiträge: 84
  • Dank erhalten: 11
  • Karma: 6
Bonjour,

Je souhaiterais améliorer un tout petit peu l'ergonomie d'un de mes questionnaires qui comportent beaucoup de tableaux de questions à 4 modalités classiques. Je souhaiterais quand un répondant coche sa réponse sur une ligne que cette case se colorie d'une couleur personnalisée.

J'imagine qu'il faudrait que je rajoute une fonction onclick() dans une source (?) quelque part avec un petit script JS que je peux intégrer dans mon template.
Quelqu'un aurait déjà vu un petit code ou un workaround sur ce sujet ? ou sinon, auriez-vous quelques indications pour bien placer cette fonction ou autres ?

Merci bcp,

Thibault
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Coloriage réponse dans un tableau 8 Monate 1 Woche her #98881

  • Nickko
  • Nickkos Avatar
  • OFFLINE
  • LimeSurvey Team
  • Beiträge: 1929
  • Dank erhalten: 218
  • Karma: 44
Je n'ai pas encore vu de Workarround pour ça, je pense qu'avec un peu de JS comme tu le dis tu pourras faire ce que tu veux. Je ne maîtrise pas assez la question pour te dire comment faire par contre.
Nickko
Ergonome / Usability expert
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Coloriage réponse dans un tableau 8 Monate 1 Woche her #98884

  • titoun31
  • titoun31s Avatar
  • OFFLINE
  • Expert Lime
  • Beiträge: 84
  • Dank erhalten: 11
  • Karma: 6
Merci Nickko pour ton retour... Je vais essayer de chercher un peu dans ce sens. Si je trouve un truc, je vous en ferai part ! :)

Bon aprem !

Thibault
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Coloriage réponse dans un tableau 8 Monate 1 Woche her #98894

  • DenisChenu
  • DenisChenus Avatar
  • OFFLINE
  • Moderator Lime
  • Beiträge: 5850
  • Dank erhalten: 716
  • Karma: 222
Salut,

Un système de :
$("table.question").delegate('input.radio','click', function(e) {
  if($(this).is(':checked')){
    $(this).closest('tr').find('td').removeClass('selected');
    $(this).closest('td').addClass('selected');
  }else{
   $(this).closest('tr').find('td').removeClass('selected');
  }
});

Denis
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Folgende Benutzer bedankten sich: titoun31

Coloriage réponse dans un tableau 8 Monate 3 Tage her #99115

  • titoun31
  • titoun31s Avatar
  • OFFLINE
  • Expert Lime
  • Beiträge: 84
  • Dank erhalten: 11
  • Karma: 6
Merci Denis pour ce code.
J'ai mis un peu de temps à le tester mais il fonctionne, seulement uniquement que lorsque le click est sur l'input.radio pas sur l'array du tr.td
J'ai essayé de modifier les conditions mais sans trop de succès : aurais-tu une petite idée STP ?

Merci bcp bcp !

Thibault
Der Administrator hat öffentliche Schreibrechte deaktiviert.

Coloriage réponse dans un tableau 7 Monate 4 Wochen her #99159

  • DenisChenu
  • DenisChenus Avatar
  • OFFLINE
  • Moderator Lime
  • Beiträge: 5850
  • Dank erhalten: 716
  • Karma: 222
Salut,

Ouaip, corrigé dans le version 2.05 ...

Ajoute cela dans ton template.js :
/**
 * Adapt cell to have a click on cell do a click on input:radio or input:checkbox (if unique)
 * Using delegate the can be outside document.ready
 * @author Denis Chenu / Shnoulle
 */
function prepareCellAdapters()
{
	$('table.question').delegate('tbody td input:checkbox,tbody td input:radio,tbody td label',"click", function(e) {
		e.stopPropagation();
	});
	$('table.question').delegate('tbody td',"click", function() {
		if($(this).find("input:radio,input:checkbox").length==1)
		{
			$(this).find("input:radio").click();
			$(this).find("input:radio").triggerHandler("click");
			$(this).find("input:checkbox").click();
			$(this).find("input:checkbox").triggerHandler("click");
		}
	});
}
Der Administrator hat öffentliche Schreibrechte deaktiviert.
Folgende Benutzer bedankten sich: titoun31
Moderatoren: Nickko
Ladezeit der Seite: 0.154 Sekunden
Donation Image