Decimal places

Plus d'informations
il y a 10 mois 3 semaines #176024 par DB1324
Decimal places a été créé par DB1324
Hi Everyone,


I have a survey which has several numeric input fields along the lines of 'How much did X cost?', but I can't for the life of me figure out how/where to validate the field to restrict to two decimal places (e.g. allow 12.55, but not 12.5, or 12.5555555)

I've been looking at RegEx I can't get it to work; I've tried putting it in 'Validation' ('/[0-9]+(\.[0-9][0-9]?)?/'), and in 'Question validation equation' (regexMatch('/[0-9]+(\.[0-9][0-9]?)?/')), but no joy.

We're running version 2.65.1+170522

Any help much appreciated - and apologies in advance if this is a stupid question.

Thanks

Connexion ou Créer un compte pour participer à la conversation.

LimeSurvey Partners
Plus d'informations
il y a 10 mois 3 semaines #176027 par tpartner
Réponse de tpartner sur le sujet Decimal places
Try this as the question validation equation:

regexMatch("/^\d+(\.\d{1,2})?$/", self)

It will allow either an integer or enforce precision to two decimal places.

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Official LimeSurvey Partner - partnersurveys.com

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 mois 3 semaines #176029 par DB1324
Réponse de DB1324 sur le sujet Decimal places
Perfect, thank you so much.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 10 mois 3 semaines #176032 par DenisChenu
Réponse de DenisChenu sur le sujet Decimal places
If you need to disable 12.5 , and allow only 12.50 : you need a text question type (since 12.50 === 12.5 in numeric).

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
An error happen ? Before make a new topic : remind the Debug mode .
Les utilisateur(s) suivant ont remercié: tpartner

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 7 mois 3 jours #180629 par DB1324
Réponse de DB1324 sur le sujet Decimal places
Hello,

Sorry to resurrect an old request, but I have since identified an issue with the solution that was kindly offered up here.

regexMatch("/^\d+(\.\d{1,2})?$/", self) will indeed limit responses to integers or values with two decimal places, but if I apply it to a non-mandatory question, the field effectively becomes mandatory because null/no answer gets picked up by the validation.

Is there a way of amending this validation to allow for no response?

Thank you!

(We are still running version 2.65.1)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 7 mois 3 jours #180632 par tpartner
Réponse de tpartner sur le sujet Decimal places
Try this (untested):

regexMatch("/^\d+(\.\d{1,2})?$|^$/", self)

Cheers,
Tony Partner

Solutions, code and workarounds presented in these forums are given without any warranty, implied or otherwise.
Official LimeSurvey Partner - partnersurveys.com
Les utilisateur(s) suivant ont remercié: DB1324

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 7 mois 3 jours #180633 par DB1324
Réponse de DB1324 sur le sujet Decimal places
Tony, that's brilliant - thank you so much!

Connexion ou Créer un compte pour participer à la conversation.

Commencez dès maintenant !

Créez simplement un compte et commencez à utiliser LimeSurvey dès aujourd'hui.

Inscrivez-vous maintenant

Inscrivez-vous à notre Newsletter!