Expand my Community achievements bar.

Change display pattern at run time

Avatar

Former Community Member
I have a date/time field which has display pattern set as MM/DD/YYYY...

During run time, if user clicks on a check box...the display should change to DD/MMM/YYYY...How can i do that?
6 Replies

Avatar

Former Community Member
You can do this with a little bit of script on your check box's Click event (in FormCalc in this example):



if ($ == 1) then

DateTimeField1.format.picture = "DD/MMM/YYYY"

else

DateTimeField1.format.picture = "MM/DD/YYYY"

endif


The trick is to know that in XFA, what Designer refers to as the "Display" picture is the <format> node which contains a <picture> which, in turn, contains the "display" picture; or, the picture used to
format the field's value for display purposes.



I've attached a sample form which demonstrates this.



Stefan

Adobe Systems

Avatar

Former Community Member
In the CheckBox's change event, add code that sets the field's format.picture.value:



if (this.rawValue == 1)

{

// Box is checked; use one format

DateTimeField1.format.picture.value = "YYYY-MM-DD";

} else

{

// else use the other format

DateTimeField1.format.picture.value = "DD-MM-YYYY";

}

--

SteveX

Adobe Systems

Avatar

Former Community Member
What if i need to write the code in java script?? I already have a ton of code written in click event using java script

Avatar

Former Community Member
SteveX's sample script is essentially my FormCalc sample in JavaScript.



Stefan

Adobe Systems

Avatar

Former Community Member

Just wondering if this was also possible for numeric fields? I can't seem to find any documentation on it for numeric fields.