Pre remplir depuis une table d'invitation

More
3 years 7 months ago - 3 years 7 months ago #104605 by gabriel01
gabriel01 created the topic: Pre remplir depuis une table d'invitation
Bonjour à tous,

Je dispose d'un questionnaire dont :

surveyid : 914725
gid : 951
qid : 19224 de type "Multiples zones de texte court". Les id des sous-questions sont SQ001, SQ003, SQ003 et SQ004

Au l’exécution du questionnaire je souhaite que les sous-questions SQ001, SQ003 et SQ003 se remplissent depuis les champs de la table d'invitations. Ceci marche sans problème avec l'intégration de java script dans la source de la question et avec des codes comme
$('#answer914725X951X19224SQ002').val('{TOKEN:EMAIL}');

Mais étant donnée que je donne aux répondants la possibilité de revenir plus tard sur ces champs pour les mettre à jour, je rencontre maintenant un problème car, à chaque chargement du questionnaire, les valeurs, mises à jour par les répondants, sont remplacées par les valeurs par défaut, c-a-d, les valeurs issues de la table d'invitations.

Avez-vous une solution qui me permettrait de dire, lors de rechargement du questionnaire par le répondant : "si les champs SQ001, SQ002 et SQ003 sont vides alors les pre-remplir par les valeurs issues des invitations sinon afficher les valeurs saisies par le répondant" ?

J'espère que ma question est claire.
Cordialement,

PS. J'utilise la version 2.00+ Build 131206
Last Edit: 3 years 7 months ago by gabriel01.

Please Log in to join the conversation.

More
3 years 7 months ago #104610 by Nickko
Nickko replied the topic: Pre remplir depuis une table d'invitation
Ajoute une condition dans ton jacascript pour tester si le champ est vide et ne modifie le champ que s'il l'est

Nickko
Ergonome / Usability expert

Please Log in to join the conversation.

More
3 years 7 months ago #104611 by gabriel01
gabriel01 replied the topic: Pre remplir depuis une table d'invitation

Nickko wrote: Ajoute une condition dans ton jacascript pour tester si le champ est vide et ne modifie le champ que s'il l'est

Ce que j'essaie de faire depuis ce matin mais sans succès ! :blush:

Please Log in to join the conversation.

More
3 years 7 months ago - 3 years 7 months ago #104613 by Nickko
Nickko replied the topic: Pre remplir depuis une table d'invitation
Moi j'essaierais un truc du genre (mais je n'y connais rien en Jquery). if($('#answer914725X951X19224SQ002').val()!=""){$('#answer914725X951X19224SQ002').val('{TOKEN:EMAIL}');}

Nickko
Ergonome / Usability expert
Last Edit: 3 years 7 months ago by Nickko.

Please Log in to join the conversation.

More
3 years 7 months ago #104614 by gabriel01
gabriel01 replied the topic: Pre remplir depuis une table d'invitation

Nickko wrote: Moi j'essaierais un truc du genre (mais je n'y connais rien en Jquery). if($('#answer914725X951X19224SQ002').val()!=""){$('#answer914725X951X19224SQ002').val('{TOKEN:EMAIL}');}


Non, ça ne fonctionne pas :(

Please Log in to join the conversation.

More
3 years 7 months ago #104615 by Nickko
Nickko replied the topic: Pre remplir depuis une table d'invitation
tu as essayé de débugguer avec des "alert" ?

genre alert($('#answer914725X951X19224SQ002').val()) retourne quoi ?

Nickko
Ergonome / Usability expert
The following user(s) said Thank You: gabriel01

Please Log in to join the conversation.

More
3 years 7 months ago #104617 by gabriel01
gabriel01 replied the topic: Pre remplir depuis une table d'invitation
le code
$('#answer914725X951X19224SQ002').val('{TOKEN:FIRSTNAME}');
alert($('#answer914725X951X19224SQ002').val());

m'affiche le prénom ! à priori mon code java script fonctionne comme indiqué dans mon premier message !

Please Log in to join the conversation.

More
3 years 7 months ago #104633 by Nickko
Nickko replied the topic: Pre remplir depuis une table d'invitation
Il affiche dans une boite de dialogue ou dant la question ?
Si tel est le cas, il faut continuer comme ça a coup d'alert et pas-à-pas.

Nickko
Ergonome / Usability expert

Please Log in to join the conversation.

More
3 years 7 months ago - 3 years 7 months ago #104687 by gabriel01
gabriel01 replied the topic: Pre remplir depuis une table d'invitation
Ton code avec if n'a pas marché ! Mais en mettant $('#answer914725X951X19224SQ002').val(); dans une variable ça a finalement marché ! Voici ce que j'ai mis :
var prenom = $('#answer914725X951X19224SQ002').val();
 
if(prenom == ''){
alert('je suis dedans car le champs Prenom est vide');
$('#answer914725X951X19224SQ002').val('{TOKEN:FIRSTNAME}');
}
else{
alert('pas de besoin Prenom est déjà renseigné');
}

Cordialement,
Last Edit: 3 years 7 months ago by gabriel01.

Please Log in to join the conversation.

More
3 years 7 months ago - 3 years 7 months ago #104690 by DenisChenu
DenisChenu replied the topic: Pre remplir depuis une table d'invitation
Salut,

et si tu est dans le texte de la question:
var prenom = $('#answer{SGQ}SQ002').val();
 
if(prenom == ''){
alert('je suis dedans car le champs Prenom est vide');
$('#answer{SGQ}SQ002').val('{TOKEN:FIRSTNAME}');
}
else{
alert('pas de besoin Prenom est déjà renseigné');
}
Mais la dernière version accepte directement les valeurs par défaut dans les sous question de type texte. C'est core mieux.
Tu es sur quelle version ?

Denis
PS: {SGQ} va être directement transformé par 914725X951X19224, et si on copie le questionnaire, reprendras le nouveau code INSERTANS.

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 .
Last Edit: 3 years 7 months ago by DenisChenu.

Please Log in to join the conversation.

More
3 years 7 months ago #104691 by gabriel01
gabriel01 replied the topic: Pre remplir depuis une table d'invitation
Merci Denis !

J'avoue que je n'ai pas tout saisi de ta réponse !
J'ai la version 2.00+ Build 131206

Cordialement,

Please Log in to join the conversation.

More
3 years 7 months ago #104694 by DenisChenu
DenisChenu replied the topic: Pre remplir depuis une table d'invitation

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 .
The following user(s) said Thank You: gabriel01

Please Log in to join the conversation.

More
3 years 7 months ago #104697 by gabriel01
gabriel01 replied the topic: Pre remplir depuis une table d'invitation
Je viens de tester et ça marche :laugh:
Je vais lire les liens que tu m'a communiqués.

Bonne journée,

Please Log in to join the conversation.

Moderators: Nickko

Start now!

Just create your account and start using Limesurvey today.

Register now