Expand my Community achievements bar.

Printable Expansion of Dropdown Field

Avatar

Level 1

Not entirely sure how to search for this, so if there's something available already, can you link me?

A client of mine has a pretty complex form that can be filled out online or printed out and completed.

They were wondering if they'd be able to display the form field as a dropdown list (multi-select and single select) but if a user goes to print the form, it would print the expanded list items as checkboxes? It sounded like it logically would make sense...but thought I'd ask!

Right now, the design is pretty fitted, so I wondered what considerations would need to be made to the design to make something like that work.

1 Reply

Avatar

Level 7

Hi,

Without seeing the form I will take a shot with what I would do (assuming i understand correctly).

I assume that a complex form would be flowable which means when you hide and show objects, the other objects move.

For this to work, you will be working with the pre-print and post print events.

I would have a row for the combo and a row for the checkboxes. The checkboxes would normally be hidden when viewing on screen. The button is just for my example, you use the pre print and post print events for the form.

1312668_pastedImage_0.png

form1::prePrint - (JavaScript, client)

this.resolveNode("Table1.Row2").presence = "visible"; //checkboxes

this.resolveNode("Table1.Row1").presence = "hidden"; //dropdown

form1::postPrint - (JavaScript, client)

this.resolveNode("Table1.Row2").presence = "hidden"; //checkboxes

this.resolveNode("Table1.Row1").presence = "visible"; //dropdown

Before Clicking Print

1312669_pastedImage_21.png

After Clicking Print

1312670_pastedImage_29.png

After printing or cancelling the print job

1312669_pastedImage_21.png

Pre and Post print is very handy for customising your printouts. By using a design like this example, the combo row is basically replaced at print time with the checkboxes thus not affecting the layout or length of the form.

NOTE: If you have a goal of filling in online and then printing, i would make code so that when items are selected in the combo, it also checks the boxes. Even though they are hidden until printing, they will still get checked while hidden. Simple 'if' logic can achieve this.