User Guide
cfgrid 193
Note: Clicking the submit button while editing a grid cell occasionally causes the cell changes to be
lost. To ensure that changes are submitted properly, Macromedia recommends that after user
updates data in a cell, they click another cell before submitting the form.
How data is returned from cfgrid
This tag returns data by setting form variables in the data submitted to the form's action page, as
an HTML form control does. Because the data can vary, depending on the tag’s
SelectMode
attribute value, the form variables that are returned also vary depending on this value.
In general, the data returned falls into one of these categories:
• Simple data, returned from simple select operations
• Complex data, returned from insert, update and delete operations
Simple selection data (SelectMode = Single, Column, or Row)
The data that form variables return to the
cfform's action page contains information about
which cells the user selected. In general, ColdFusion makes this data available in the action page,
as ColdFusion variables in the Form scope, with the naming convention
form.#GridName#.#ColumnName#
Each SelectMode returns these form variable(s):
• SelectMode="single"
form.#GridName#.#ColumnName# = "SelectedCellValue"
• SelectMode="column"
form.#GridName#.#ColumnName# = "ValueOfCellRow1,
ValueOfCellRow2, ValueOfCellRowN"
• SelectMode="row"
form.#GridName#.#Column1Name# = "ValueOfCellInSelectedRow"
form.#GridName#.#Column2Name# = "ValueOfCellInSelectedRow"
form.#GridName#.#ColumnNName# = "ValueOfCellInSelectedRow"
Complex update data (SelectMode = Edit)
The grid returns a large amount of data, to inform the action page of inserts, updates or deletes
that the user made to the grid. In most cases, you can use the
cfgridupdate tag to automatically
gather the data from the form variables; the tag collects data, writes SQL calls, and updates the
data source.
If you cannot use
cfgridupdate (if, for example, you must distribute the returned data to more
than one data source), you must write code to read form variables. In this mode, ColdFusion
creates the following array variables in the Form scope for each
cfgrid:
form.#GridName#.#ColumnName#
form.#GridName#.original.#ColumnName#
form.#GridName#.RowStatus.Action