Properties Methods Events Config Options Direct Link

    Action
      Action.Load

# Class Ext.form.Action.Load

Package: | Ext.form
Defined In: | Action.js
Class: | Action.Load
Subclasses: | Action.DirectLoad
Extends: | Action

A class which handles loading of data from a server into the Fields of an Ext.form.BasicForm.

Instances of this class are only created by a Form when loading.

Response Packet Criteria

A response packet must contain:

- `success` property : Boolean
- `data` property : Object
The `data` property contains the values of Fields to load. The individual value object for each Field is passed to the Field's setValue method.

JSON Packets

By default, response packets are assumed to be JSON, so for the following form load call:

    var myFormPanel = new Ext.form.FormPanel({
        title: 'Client and routing info',
        items: [{
            fieldLabel: 'Client',
            name: 'clientName'
        }, {
            fieldLabel: 'Port of loading',
            name: 'portOfLoading'
        }, {
            fieldLabel: 'Port of discharge',
            name: 'portOfDischarge'
        }]
    });
    myFormPanel.getForm().load({
        url: '/getRoutingInfo.php',
        params: {
            consignmentRef: myConsignmentRef
        },
        failure: function(form, action) {
            Ext.Msg.alert("Load failed", action.result.errorMessage);
        }
    });

a success response packet may look like this:

    {
        success: true,
        data: {
            clientName: "Fred. Olsen Lines",
            portOfLoading: "FXT",
            portOfDischarge: "OSL"
        }
    }

while a failure response packet may look like this:

    {
        success: false,
        errorMessage: "Consignment reference not found"
    }

Other data may be placed into the response for processing the Form's callback or event handler methods. The object decoded from this JSON is available in the result property.

## Config Options

Config Options | Defined By
--- | ---
| failure : Function The function to call when a failure packet was recieved, or when an error ocurred in the Ajax communication. The func... The function to call when a failure packet was recieved, or when an error ocurred in the Ajax communication. The function is passed the following parameters: form : Ext.form.BasicForm The form that requested the action action : Ext.form.Action The Action class. If an Ajax error ocurred, the failure type will be in failureType. The result property of this object may be examined to perform custom postprocessing. | Action
| method : String The HTTP method to use to access the requested URL. Defaults to the Ext.form.BasicForm's method, or if that is not sp... The HTTP method to use to access the requested URL. Defaults to the Ext.form.BasicForm's method, or if that is not specified, the underlying DOM form's method. | Action
| params : Mixed Extra parameter values to pass. These are added to the Form's Ext.form.BasicForm.baseParams and passed to the specifi... Extra parameter values to pass. These are added to the Form's Ext.form.BasicForm.baseParams and passed to the specified URL along with the Form's input fields. Parameters are encoded as standard HTTP parameters using Ext.urlEncode. | Action
| reset : Boolean When set to true, causes the Form to be reset on Action success. If specified, this happens before the success callba... When set to `true`, causes the Form to be reset on Action success. If specified, this happens before the success callback is called and before the Form's actioncomplete event fires. | Action
| scope : Object The scope in which to call the callback functions (The `this` reference for the callback functions). | Action
| submitEmptyText : Boolean If set to `true`, the emptyText value will be sent with the form when it is submitted. Defaults to `true`. | Action
| success : Function The function to call when a valid success return packet is recieved. The function is passed the following parameters:... The function to call when a valid success return packet is recieved. The function is passed the following parameters: form : Ext.form.BasicForm The form that requested the action action : Ext.form.Action The Action class. The result property of this object may be examined to perform custom postprocessing. | Action
| timeout : Number The number of seconds to wait for a server response before failing with the failureType as Action.CONNECT_FAILURE. If... The number of seconds to wait for a server response before failing with the failureType as Action.CONNECT_FAILURE. If not specified, defaults to the configured `timeout` of the form. | Action
| url : String The URL that the Action is to invoke. | Action
| waitMsg : String The message to be displayed by a call to Ext.MessageBox.wait during the time the action is being processed. | Action
| waitTitle : String The title to be displayed by a call to Ext.MessageBox.wait during the time the action is being processed. | Action

## Public Properties

Property | Defined By
--- | ---
| CLIENT_INVALID : String Failure type returned when client side validation of the Form fails thus aborting a submit action. Client side valida... Failure type returned when client side validation of the Form fails thus aborting a submit action. Client side validation is performed unless clientValidation is explicitly set to `false`. | Action
| CONNECT_FAILURE : String Failure type returned when a communication error happens when attempting to send a request to the remote server. The ... Failure type returned when a communication error happens when attempting to send a request to the remote server. The response may be examined to provide further information. | Action
| LOAD_FAILURE : String Failure type returned when the response's <tt style="font-weight:bold">success property is set to false, or no field ... Failure type returned when the response's `success` property is set to `false`, or no field values are returned in the response's `data` property. | Action
| SERVER_INVALID : String Failure type returned when server side processing fails and the result's <tt style="font-weight:bold">success propert... Failure type returned when server side processing fails and the result's `success` property is set to `false`. In the case of a form submission, field-specific error messages may be returned in the result's `errors` property. | Action
| failureType : String The type of failure detected will be one of these: CLIENT_INVALID, SERVER_INVALID, CONNECT_FAILURE, or LOAD_FAILURE. ... The type of failure detected will be one of these: CLIENT_INVALID, SERVER_INVALID, CONNECT_FAILURE, or LOAD_FAILURE. Usage:
    var fp = new Ext.form.FormPanel({
    ...
    buttons: [{
        text: 'Save',
        formBind: true,
        handler: function(){
            if(fp.getForm().isValid()){
                fp.getForm().submit({
                    url: 'form-submit.php',
                    waitMsg: 'Submitting your data...',
                    success: function(form, action){
                        // server responded with success = true
                        var result = action.result;
                    },
                    failure: function(form, action){
                        if (action.failureType === Ext.form.Action.CONNECT_FAILURE) {
                            Ext.Msg.alert('Error',
                                'Status:'+action.response.status+': '+
                                action.response.statusText);
                        }
                        if (action.failureType === Ext.form.Action.SERVER_INVALID){
                            // server responded with success = false
                            Ext.Msg.alert('Invalid', action.result.errormsg);
                        }
                    }
                });
            }
        }
    },{
        text: 'Reset',
        handler: function(){
            fp.getForm().reset();
        }
    }]
| Action
| response : Object The XMLHttpRequest object used to perform the action. | Action
| result : Object The decoded response object containing a boolean <tt style="font-weight:bold">success property and other, action-spec... The decoded response object containing a boolean `success` property and other, action-specific properties. | Action
| type : String The type of action this Action instance performs. Currently only "submit" and "load" are supported. | Action

## Public Methods

This class has no public methods.

## Public Events

This class has no public events.