Javascript dans les questions

More
4 years 4 months ago #92413 by rodparis
rodparis created the topic: Javascript dans les questions
Bonjour,

Jusqu'à maintenant (avant 2.0), j'utilisais du JS afin de contrôler le format de certaines réponses de mon questionnaire. J'utilisais answernnnXnnnnXnnn ... pour faire mon traitement en JS.
Hors depuis le passage à la version 2.0, mes contrôles via JS ne fonctionnent plus !

Une idée ?

Cdt

Please Log in to join the conversation.

More
4 years 4 months ago #92421 by Ben_V
Ben_V replied the topic: Javascript dans les questions
Salut,
celà peut venir d'une ancienne utilisation des accolades { };
Les versions ≥ LS 1.92 et utilisant le gestionnaire d'expression ("Expression Manager") sont plutôt pointilleuses avec çà car tout ce qui est à l'intérieur des {} va être passé à la moulinette;
Donc si c'est du code propre à LS ou une expression valide pour le gestionnaire, pas de problême:
ex: {INSERTANS:123X45X67}, {SID}, {GID} et l'ensemble des {keywords} connus aucun soucis;

Par contre pour du javascript il faut faire gaffe de laisser un espace derrière l'accolade pour déjouer le parse:
Mauvais => jquery(document).ready(function() {document.getElementById....
Correct => jquery(document).ready(function() { document.getElementById....

Sinon vérifie du côté des codes SGQA on ne sait jamais ;)

Ben.

Benoît

EM Variables => bit.ly/1TKQyNu | EM Roadmap => bit.ly/1UTrOB4
Last Releases => 2.6x.x goo.gl/ztWfIV | 2.06/2.6.x => bit.ly/1Qv44A1
Demo Surveys => goo.gl/HuR6Xe (already included in /docs/demosurveys)

Please Log in to join the conversation.

More
4 years 4 months ago #92422 by rodparis
rodparis replied the topic: Javascript dans les questions
Salut Ben,

Et merci pour ces 1ers éléments de réponses.
Néanmoins je pense que cela ne colle pas à ma problématique car je n'utilise pas du jquery dans la source de ma question.

Pour te donner un ordre d'idée, j'effectue un contrôle de format sur une valeur numérique dans une de mes questions. Pour se faire, lorsque le répondant appuie sur Suivant, le JS se met en route en "lisant" la valeur de la réponse saisie et la traite.
Grosso modo, je fais comme ceci pour lire la valeure :

<script type="text/javascript" charset="utf-8">

$(document).submit(function() {
var accesscode = trim(document.getElementById("answer12345X12X34").value);

Mais depuis passage de 1.92 à 2.00+ et bien celà ne marche plus du tout !

Thx

Please Log in to join the conversation.

More
4 years 4 months ago #92441 by DenisChenu
DenisChenu replied the topic: Javascript dans les questions
Utilise jquery, c'est plus sur.

var accesscode = $.trim($('#answer12345X12X34').val());

Sinon, c'est peut ^etre le code 12345X12X34 qui ne serait pas le bon. Tu peux utiliser le gestionnaire:
#answer{QCODE.SGQA} si la question à comme code QCODE.

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 to join the conversation.

Moderators: Nickko

Start now!

Just create your account and start using Limesurvey today.

Register now