 Level 1

0% to Level 2

Tip /

to gain points, level up, and earn exciting badges like the new
Mission!

View all

SOLVED

## Setting pattern in a script  Level 2

Along with rounding up I'm trying to set a the pattern of a field in a form based on the number entered.  I.E. if the field is <10 then use 1 decimal; if 10 or greater use 0 decimals. So basically,  if 0.47 is entered it will round to 0.5.  Likewise if 2.84, it would round to 2.8.  But if 10.85 is entered it would round to 11 and 25.83 would round to 26 because both are greater than 10.  Can this be done?

1 Accepted Solution  Employee

@PulkitJain has shown you a JS function which will modify the value which you would then put into the field.

There is an alternative approach. Assuming that this is an interactive form you use a Numeric Field and then place the following script in the Exit event:

if (this.rawValue <10) {
this.format.picture.value = "num{z,zzz,zz9.9}";
} else {
this.format.picture.value = "num{z,zzz,zz9}";
}

This will not change the value, only the display pattern.  3 Replies  Employee

@ReluctantProgrammer

You can implement something like below on the field exit event of your form:

``````function myFunction() {
var num = [Field Value Input];
if (num<10)
{
var n = num.toFixed(1);
} else
{
var n = num.toFixed(0);
}``````

Hope this helps!  Employee

@PulkitJain has shown you a JS function which will modify the value which you would then put into the field.

There is an alternative approach. Assuming that this is an interactive form you use a Numeric Field and then place the following script in the Exit event:

if (this.rawValue <10) {
this.format.picture.value = "num{z,zzz,zz9.9}";
} else {
this.format.picture.value = "num{z,zzz,zz9}";
}

This will not change the value, only the display pattern.    Level 2
Perfect! Thank you so much!!  