Créer un tableau à (double) échelle avec plus de deux échelles ?!

More
3 years 5 months ago #121512 by Kingulian
Kingulian created the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
Note : Ce topic est un doublet en français de celui que je viens de poster sur le forum général (en anglais) "Can I do this with LimeSurvey".

Bonjour à tous mes amis (français) de l'Open Source :)

Je m’appelle Julien. Changemaker super motivé, je crée en ce moment une nouvelle start-up dans l'économie collaborative. Aujourd'hui, j'ai besoin de faire une enquête auprès des futurs utilisateurs de ce nouveau service afin de leur poser quelques questions nécessaires.

Je voudrais rendre l’expérience de ce questionnaire la plus simple et rapide possible aux questionnés.
Pour cela, il faudrait que je puisse créer une question avec une tableau (à échelle, avec listes déroulantes) avec QUATRE échelles !!! :ohmy:

Est-ce que vous pensez que j'ai une petite chance d'y arriver ? Et si oui, COMMENT ?

Merci à tous pour votre temps et votre collaboration :cheer:

Julien

Please Log in or Create an account to join the conversation.

More
3 years 5 months ago #121532 by Kingulian
Kingulian replied the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
Bonjour :)

Je me permets de rajouter des exemples photos de ce que je cherche à faire !

Ça serait super si je pouvais réussir à faire quelque chose comme dans l'exemple 1 (un tableau à quatre échelles) !
Le mieux, serait même de transformer la quatrième échelle en "échelle de texte" (exemple 2).

Que pensez-vous ? :)

Julien
Attachments:

Please Log in or Create an account to join the conversation.

More
3 years 5 months ago #121595 by Nickko
Nickko replied the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
J'ai vu qu'on t'avait répondu sur le forum en Anglais, as-tu trouvé ton bonheur ?

Nickko
Head of ergonomics, UX & UI.

Please Log in or Create an account to join the conversation.

More
3 years 5 months ago #121610 by Kingulian
Kingulian replied the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
Bonjour Nickko,

Merci de prendre du temps et de te soucier de mon problème :)

Effectivement on m'a répondu en anglais. Je pense que mon "bonheur" se trouve dans les liens qu'on m'a copié.

Après je n'ai pas les compétences pour le coder moi même. Ça risque d'être dur de m'aider via le forum là dessus. Je pense être obligé de trouver de l'aide IRL pour ça :)

Si tu ne te sens pas en mesure de m'aider sur cette tache via le forum. Est-ce que tu peux au moins me dire où trouver l'outils pour coder puis "intégrer" ce nouveau script ?

Merci beaucoup ! Bon week-end ;)

Please Log in or Create an account to join the conversation.

More
3 years 5 months ago #121619 by Nickko
Nickko replied the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
Je te conseille de t'adresser à Denis.

Nickko
Head of ergonomics, UX & UI.

Please Log in or Create an account to join the conversation.

More
3 years 4 months ago #121664 by DenisChenu
DenisChenu replied the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
Salut,

Actuellement : une seule façon de faire : workaround javascript .... Cela doit être le lien que l'on t'a donné sur a partie anglaise. C'est tpartner qui t'as répondu ? Donne le lien ici.

Denis

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand (or search sondages pro).
An error happen ? Before make a new topic : remind the Debug mode .

Please Log in or Create an account to join the conversation.

More
3 years 4 months ago #121862 by Kingulian
Kingulian replied the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
Salut à tous,

C'est bon, j'ai reussi :)

Donc, si quelqu'un cherche à créer le même tableau (tableau avec plusieurs colonnes, en utilisant des menus déroulants), voici les étapes à suivre:

1) Créer un tableau de texte avec plusieurs colonnes.

2) Editer la question. Aller dans le cadre de la question (sous le "code" de la question), puis cliquez sur "SOURCE"

3) Ajouter le code suivant:

<script> $(function(){
/** ID du questionnaire **/
var questionIdentifier = '#question17';
/** Options **/
var selectOptions = {
'SQ001': color=#ff0000]"---", "OUI", "NON"[/color,
'SQ002': color=#ff0000]"---", "min. 1 fois par semaine", "min. 1 fois par mois", "min. 1 par an", "Jamais"[/color,
'SQ003': color=#ff0000]"---", "OUI", "NON", "Je ne sais pas"[/color,
'SQ004': color=#ff0000]"---", "0,25€", "0,50€", "0,75€", "1,00€", "1,25€", "1,50€", "1,75€", "2,0€", "2,5€", "3,0€", "3,5€", "4,0€", "4,5€", "5,0€", "5,5€", "6,0€", "6,5€", "7,0€", "7,5€", "8,0€", "8,5€", "9,0€", "9,5€", "10€" [/color
};

var createSelect = function(key) {

var select = $('<select>');
$.each(selectOptions[key], function (id, value) {
var option = $('<option value="' + value + '">' + value + '</option>');
select.append(option);
});
return select;
};

var getKey = function(name) {

for (var testKey in selectOptions) {
if (name.indexOf('_' + testKey) > -1) {
return testKey;
}
}
return null;
};

$.each($(questionIdentifier).find('.subquestion-list input'), function(index, element){
var input = $(element);
var name = input.attr('name');
if ('text' == input.attr('type')) {
var key = getKey(name);
if (null != key) {
var select = createSelect(key);
input.parent().append(select);
select.val(input.val());
select.change(function(){
input.val(select.val());
});
input.css('display', 'none');
}
}
});
}); </script>

5) Modifier le texte rouge avec
- Le numéro de la question que vous modifiez
- SQ00X ["proposition 1 du menu déroulant", "proposition 2 du menu déroulant", "proposition 3 du menu déroulant", "proposition 4 du menu déroulant"... et ainsi de suite]

6) Puis enregistrer la question et de faite une petite danse de la victoire :laugh:


Merci à tous de votre soutient ;)

Bonne journée

Julien
Attachments:

Please Log in or Create an account to join the conversation.

More
3 years 4 months ago #121863 by Kingulian
Kingulian replied the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
ERREUR dans le code copié !

Je recommence :

<script> $(function(){
/** ID du questionnaire **/
var questionIdentifier = '#question17';
/** Options **/
var selectOptions = {
'SQ001': color=#ff0000]"---", "OUI", "NON"[/color,
'SQ002': color=#ff0000]"---", "min. 1 fois par semaine", "min. 1 fois par mois", "min. 1 par an", "Jamais"[/color,
'SQ003': color=#ff0000]"---", "OUI", "NON", "Je ne sais pas"[/color,
'SQ004': ["---", "0,25€", "0,50€", "0,75€", "1,00€", "1,25€", "1,50€", "1,75€", "2,0€", "2,5€", "3,0€", "3,5€", "4,0€", "4,5€", "5,0€", "5,5€", "6,0€", "6,5€", "7,0€", "7,5€", "8,0€", "8,5€", "9,0€", "9,5€", "10€" ]
};

var createSelect = function(key) {

var select = $('<select>');
$.each(selectOptions[key], function (id, value) {
var option = $('<option value="' + value + '">' + value + '</option>');
select.append(option);
});
return select;
};

var getKey = function(name) {

for (var testKey in selectOptions) {
if (name.indexOf('_' + testKey) > -1) {
return testKey;
}
}
return null;
};

$.each($(questionIdentifier).find('.subquestion-list input'), function(index, element){
var input = $(element);
var name = input.attr('name');
if ('text' == input.attr('type')) {
var key = getKey(name);
if (null != key) {
var select = createSelect(key);
input.parent().append(select);
select.val(input.val());
select.change(function(){
input.val(select.val());
});
input.css('display', 'none');
}
}
});
}); </script>

Please Log in or Create an account to join the conversation.

More
3 years 4 months ago - 3 years 4 months ago #121864 by Kingulian
Kingulian replied the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
Bon, je fais n'importe quoi !

Voici le code :
<script>     $(function(){
        /** ID du questionnaire **/
        var questionIdentifier = '#question17';
        /** Options **/
        var selectOptions = {
            'SQ001': ["---", "OUI", "NON"],
            'SQ002': ["---", "min. 1 fois par semaine", "min. 1 fois par mois", "min. 1 par an", "Jamais"],
            'SQ003': ["---", "OUI", "NON", "Je ne sais pas"],
            'SQ004': ["---", "0,25€", "0,50€", "0,75€", "1,00€", "1,25€", "1,50€", "1,75€", "2,0€", "2,5€", "3,0€", "3,5€", "4,0€", "4,5€", "5,0€", "5,5€", "6,0€", "6,5€", "7,0€", "7,5€", "8,0€", "8,5€", "9,0€", "9,5€", "10€" ]
        };
 
        var createSelect = function(key) {
 
            var select = $('<select>');
            $.each(selectOptions[key], function (id, value) {
                var option = $('<option value="' + value + '">' + value + '</option>');
                select.append(option);
            });
            return select;
        };
 
        var getKey = function(name) {
 
            for (var testKey in selectOptions) {
                if (name.indexOf('_' + testKey) > -1) {
                    return testKey;
                }
            }
            return null;
        };
 
        $.each($(questionIdentifier).find('.subquestion-list input'), function(index, element){
            var input = $(element);
            var name = input.attr('name');
            if ('text' == input.attr('type')) {
                var key = getKey(name);
                if (null != key) {
                    var select = createSelect(key);
                    input.parent().append(select);
                    select.val(input.val());
                    select.change(function(){
                        input.val(select.val());
                    });
                    input.css('display', 'none');
                }
            }
        });
    }); </script>


ET VOUS CHANGEZ cette partie, au début :
 var questionIdentifier = '#question17';
        /** Options **/
        var selectOptions = {
            'SQ001': ["---", "OUI", "NON"],
            'SQ002': ["---", "min. 1 fois par semaine", "min. 1 fois par mois", "min. 1 par an", "Jamais"],
            'SQ003': ["---", "OUI", "NON", "Je ne sais pas"],
            'SQ004': ["---", "0,25€", "0,50€", "0,75€", "1,00€", "1,25€", "1,50€", "1,75€", "2,0€", "2,5€", "3,0€", "3,5€", "4,0€", "4,5€", "5,0€", "5,5€", "6,0€", "6,5€", "7,0€", "7,5€", "8,0€", "8,5€", "9,0€", "9,5€", "10€" ]
        };
Last Edit: 3 years 4 months ago by DenisChenu. Reason: [code type=javascript]

Please Log in or Create an account to join the conversation.

More
3 years 4 months ago #121899 by DenisChenu
DenisChenu replied the topic: Créer un tableau à (double) échelle avec plus de deux échelles ?!
N'hésite pas à utiliser les balises code :)

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand (or search sondages pro).
An error happen ? Before make a new topic : remind the Debug mode .

Please Log in or Create an account to join the conversation.

Moderators: Nickko

Start now!

Just create your account and start using Limesurvey today.

Register now
Join our Newsletter!