Flex save changes from an AdvancedDataGrid using itemEditEnd
Posted 15 September, 2008on:
I just remembered that I had trouble finding out what I could access with this event handler function. Sure it was easy to find out when the event is dispatched, but how can I access the new field value edited by the user? How do I access the previous value?
So this is just a simple example showing you that. This also applies to the normal DataGrid and standard list controls.
The itemEditEnd event is dispatched (it’s in the name) when a user finishes editing a cell so this is pretty much the best time to save the user’s changes to that field/row.
Here’s our function:
protected function saveChange(event:AdvancedDataGridEvent):void
* use event.dataField to get the edited field name
var field:String = event.dataField;
* i'm using the following line to get the 'id' of the row being edited
* because i passed an 'id' field through from my dataProvider.
var selectedID:String = event.currentTarget.selectedItem.id.toString();
* use the itemEditorInstance to get the newly edited value but retrieve
* the previous value from the existing grid data. i'm using the default
* textinput itemRenderer so I can retrieve the new value using the
* itemEditInstance's 'text' property.
var newValue:String = event.currentTarget.itemEditorInstance.text;
var prevValue:String = ProductPersonalisationList.selectedItem[event.dataField];
// run a http service call or something to save the change or validate the data
4 Responses to "Flex save changes from an AdvancedDataGrid using itemEditEnd"
Comments are closed.