Creates a container control for multiple form controls. Used in the cfform tag body of Adobe Flash and XML forms. Ignored in HTML forms.
<cfformgroup type = "group type
" label = "label
" style = "style specification
" selectedIndex = "page number
"> width = "pixels
" height = "pixels
" enabled = "yes|no" visible = "yes|no" onChange = "ActionScript expression
" tooltip = "text
" id = "unique identifier
">...ColdFusion forms controls...
</cfformgroup> OR <cfformgroup type = "repeater
" query = "query object
" maxrows = "integer
"> startrow = "row number
"...ColdFusion forms controls
</cfformgroup>
cfapplet, cfcalendar, cfform, cfformitem, cfgrid, cfinput, cfselect, cfslider, cftextarea, cftree, "Using the cfformgroup tag to structure forms" and "Using cfformgroup tags" in the ColdFusion Developer's Guide.
ColdFusion MX 7: Added this tag.
The following table lists the attributes and their behavior in Flash forms. For XML, if not otherwise noted, the attribute is passed to the XML but is not interpreted by the basic XSL style sheet provided with ColdFusion.
Attribute |
Req/Opt; |
Default |
Description |
---|---|---|---|
type |
Required; Flash and XML |
|
XML: Can be any XForms group type defined in the XSLT. The XSL skins provided with ColdFusion support the following types:
|
|
|
Flash: Must be one of the following:
|
|
|
|||
query |
Required for type= repeater, ignored otherwise; Flash |
|
The query to use with the repeater. Flash creates an instance of each of the cfformgroup tag's child tags for each row in the query. You can use the bind attribute in the child tags to use data from the query row for the instance. |
enabled |
Optional; Flash |
yes |
Boolean value that specifies whether the controls in the form group are enabled. Disabled controls appear in light gray. |
height |
Optional; Flash |
|
Height of the group container, in pixels. If you omit this attribute, Flash automatically sizes the container height. Ignored for Flash repeater type. |
id |
Optional; Flash |
|
Unique identifier for the form group. When using the tabnavigator or accordion type, you must specify the id attribute to reference the controls through custom ActionScript. |
label |
Optional; Flash and XML |
|
Label to apply to the form group. In Flash, does the following:
|
maxrows |
Optional; Flash |
|
Used only for the repeater type; ignored otherwise. Specifies the maximum number of query rows to use in the Flash form repeater. If the query has more rows than the sum of the startrow attribute and this value, the repeater does not use the remaining rows. |
onChange |
Optional; Flash |
|
Tabnavigator and accordion types only: ActionScript expression or expressions to execute when a new tab or accordion page is selected. Note: The onChange event occurs when the form first appears. |
selectedIndex |
Optional; Flash only |
|
Used only for accordion and tabnavigator types; ignored otherwise. Specifies the page control to display as open, where 0 (not 1) specifies the first page control defined in the group. |
startrow |
Optional; Flash |
0 |
Used only for the repeater type; ignored otherwise. Specifies the row number of the first row of the query to use in the Flash form repeater. This attribute is zero-based: the first row is row 0, not row 1 (as in most ColdFusion tags). |
style |
Optional; Flash and XML |
|
Flash: a Flash style specification in CSS format. For detailed information on specifying Flash styles, see "Creating Forms in Flash" in the ColdFusion Developer's Guide. XML: an inline CSS style specification. |
tooltip |
Optional; Flash |
|
Text to display when the mouse pointer hovers in the form group area. If a control in the form group also specifies a tooltip, Flash displays the control's tooltip when the mouse pointer hovers over the control. |
visible |
Optional; Flash |
yes |
Boolean value specifying whether the controls in the form group are visible. If the controls are invisible, the space that would be occupied by visible controls is blank. |
width |
Optional; Flash and XML |
|
Width of the group container, in pixels. If you omit this attribute, Flash automatically sizes the container width. Ignored for Flash repeater type. |
This tag requires an end tag. This tag is ignored if the cfform type is HTML; any tag body's contents are interpreted as if the surrounding cfformgroup does not exist.
In Flash format forms, this tag organizes the contents of the form. It groups and arranges child tags. The body of this tag can contain the following tags; all other tags and text are ignored:
For more information on using this tag in Flash forms, see "Creating Forms in Flash" in the ColdFusion Developer's Guide.
In XML format, ColdFusion passes the tag and its attributes to the XML; it is the responsibility of the skin XSLT to handle the XML. The ColdFusion basic skin supports the horizontal, vertical, and dualselectlist styles only. For more information on using this tag in XML forms, see "Creating Forms in Flash" in the ColdFusion Developer's Guide.
For a simple example of an XML form that uses a single cfformgroup tag, see cfform.
The following example shows how to use the cfformgroup tag to arrange elements on a Flash form. It creates an hdividedbox container that has a vbox container on each side. The left box has heading text and two radio buttons. The right box has heading text and three check boxes.
<h3>Simple cfformgroup Example</h3> <cfform name="myform" height="450" width="500" format="Flash" > <cfformgroup type="hdividedbox" > <cfformgroup type="VBox"> <cfformitem type="text" height="20"> Pets: </cfformitem> <cfinput type="Radio" name="pets" label="Dogs" value="Dogs" checked> <cfinput type="Radio" name="pets" label="Cats" value="Cats"> </cfformgroup> <cfformgroup type="VBox"> <cfformitem type="text" height="20"> Fruits: </cfformitem> <cfinput type = "Checkbox" name="chk1" Label="Apples" value="Apples"> <cfinput type="Checkbox" name="chk2" Label="Bananas" value="Bananas"> <cfinput type="Checkbox" name="chk3" Label="Pears" value="Pears"> </cfformgroup> </cfformgroup> </cfform>
The following more complex example shows more fully how you can use cfformgroup tags to arrange controls in a Flash form. It also shows many of the text formatting features that you can use in a text cfformgroup body. When you submit the form, the page dumps the contents of the Forms scope, to show you the submitted data.
<h2>cfformgroup Example</h2> <cfif IsDefined("form.oncethrough")> <h3>The form submitted the following information to ColdFusion:</h3> <cfdump var="#form#"><br><br><br> </cfif> <h3>A Flash form using cfformgroup tags</h3> <cfform name="myform" height="450" width="500" format="Flash"> <!--- The following formgroup shows how you can present formatted text. ---> <cfformitem type="html"> <b><font color="#FF0000" size="+4" face="serif"> This form has two tabs, asking for the following:</font></b><br> <li>contact information</li> <li><i>preferences</i></li> <b>Try entering information on both tabs</b><br> Submit the form and see what ColdFusion gets in the Forms scope.</b><br> <a href="http://www..com/" target="_blank"> <font color="#0000FF"><u> This link displays the home page in a new browser window </u></font></a><br> <br> </cfformitem> <!--- Use a tabnavigator with two tabs for user input. ---> <cfformgroup type="tabnavigator" height="220"> <cfformgroup type="page" label="Contact Information"> <!--- Align the first and last name fields horizontally ---> <cfformgroup type="horizontal" label="Your Name"> <cfinput type="text" required="Yes" name="firstName" label="First" value="" width="100"/> <cfinput type="text" required="Yes" name="lastName" label="Last" value="" width="100"/> </cfformgroup> <cfformitem type="html"><textformat indent="95"><font size="-2"> Flash fills the email field in automatically. You can replace any of the text. </font></textformat> </cfformitem> <!--- The bind attribute gets the field contents from the firstname and lastName fields as they get filled in. ---> <cfinput type="text" name="email" label="email" bind="{firstName.text}.{lastName.text}@mm.com"> <cfinput type="text" name="phone" validate="telephone" required="Yes" label="Phone Number"> </cfformgroup> <cfformgroup type="page" label="Preferences"> <cfformitem type="text" height="30"> <b>Tell us your preferences</b> </cfformitem> <!--- Put the pet selectors to the left of the fruit selectors. ---> <cfformgroup type="hbox"> <!--- Group the pet selector box contents, aligned vertically. ---> <cfformgroup type="vbox"> <cfformitem type="text" height="20"> Pets: </cfformitem> <cfformgroup type="vertical"> <cfinput type="Radio" name="pets" label="Dogs" value="Dogs" checked> <cfinput type="Radio" name="pets" label="Cats" value="Cats"> </cfformgroup> </cfformgroup> <!--- Group the fruit selector box contents, aligned vertically. ---> <cfformgroup type="vbox"> <cfformitem type="text" height="20"> Fruits: </cfformitem> <cfformgroup type="tile" width="200" label="Tile box"> <--- Flash requires unique names for all controls ---> <cfinput type = "Checkbox" name="chk1" Label="Apples" value="Apples"> <cfinput type="Checkbox" name="chk2" Label="Bananas" value="Bananas"> <cfinput type="Checkbox" name="chk3" Label="Pears" value="Pears"> <cfinput type="Checkbox" name="chk4" Label="Oranges" value="Oranges"> <cfinput type="Checkbox" name="chk5" Label="Grapes" value="Grapes"> <cfinput type="Checkbox" name="chk6" Label="Cumquats" value="Cumquats"> </cfformgroup> </cfformgroup> </cfformgroup> </cfformgroup> </cfformgroup> <cfformgroup type="horizontal"> <cfinput type = "submit" name="submit" width="100" value = "Show Results"> <cfinput type = "reset" name="reset" width="100" value = "Reset Fields"> <cfinput type = "hidden" name="oncethrough" value = "Yes"> </cfformgroup> </cfform>