/* This file is part of Ext JS 3.4 Copyright (c) 2011-2013 Sencha Inc Contact: http://www.sencha.com/contact GNU General Public License Usage This file may be used under the terms of the GNU General Public License version 3.0 as published by the Free Software Foundation and appearing in the file LICENSE included in the packaging of this file. Please review the following information to ensure the GNU General Public License version 3.0 requirements will be met: http://www.gnu.org/copyleft/gpl.html. If you are unsure which license is appropriate for your use, please contact the sales department at http://www.sencha.com/contact. Build date: 2013-04-03 15:07:25 */ Ext.data.JsonP.Ext_Ajax({"alternateClassNames":[],"aliases":{},"enum":null,"parentMixins":[],"tagname":"class","subclasses":[],"extends":"Ext.data.Connection","uses":[],"html":"
Hierarchy
Files
The global Ajax request class that provides a simple way to make Ajax requests\nwith maximum flexibility.
\n\n\nSince Ext.Ajax is a singleton, you can set common properties/events for it once\nand override them at the request function level only if necessary.
\n\n\nCommon Properties you may want to set are:
// Default headers to pass in every request\nExt.Ajax.defaultHeaders = {\n 'Powered-By': 'Ext'\n};\n
\n\n\n\nCommon Events you may want to set are:
\n// Example: show a spinner during all Ajax requests\nExt.Ajax.on('beforerequest', this.showSpinner, this);\nExt.Ajax.on('requestcomplete', this.hideSpinner, this);\nExt.Ajax.on('requestexception', this.hideSpinner, this);\n
\n\n\n\nAn example request:
\n\n\n// Basic request\nExt.Ajax.request({\n url: 'foo.php',\n success: someFn,\n failure: otherFn,\n headers: {\n 'my-header': 'foo'\n },\n params: { foo: 'bar' }\n});\n\n// Simple ajax form submission\nExt.Ajax.request({\n form: 'some-form',\n params: 'foo=bar'\n});\n
\n\n\n\n(optional)
A config object containing one or more event handlers to be added to this\nobject during initialization. This should be a valid listeners config object as specified in the\naddListener example for attaching multiple handlers at once.
\n\nDOM events from ExtJs Components
\n\n\nWhile some ExtJs Component classes export selected DOM events (e.g. \"click\", \"mouseover\" etc), this\n\n\n
is usually only done when extra value can be added. For example the DataView's\nclick
event passing the node clicked on. To access DOM\nevents directly from a Component's HTMLElement, listeners must be added to the Element after the Component\nhas been rendered. A plugin can simplify this step:
// Plugin is configured with a listeners config object.\n// The Component is appended to the argument list of all handler functions.\nExt.DomObserver = Ext.extend(Object, {\n constructor: function(config) {\n this.listeners = config.listeners ? config.listeners : config;\n },\n\n // Component passes itself into plugin's init method\n init: function(c) {\n var p, l = this.listeners;\n for (p in l) {\n if (Ext.isFunction(l[p])) {\n l[p] = this.createHandler(l[p], c);\n } else {\n l[p].fn = this.createHandler(l[p].fn, c);\n }\n }\n\n // Add the listeners to the Element immediately following the render call\n c.render = c.render.createSequence(function() {\n var e = c.getEl();\n if (e) {\n e.on(l);\n }\n });\n },\n\n createHandler: function(fn, c) {\n return function(e) {\n fn.call(this, e, c);\n };\n }\n});\n\nvar combo = new Ext.form.ComboBox({\n\n // Collapse combo when its element is clicked on\n plugins: [ new Ext.DomObserver({\n click: function(evt, comp) {\n comp.collapse();\n }\n })],\n store: myStore,\n typeAhead: true,\n mode: 'local',\n triggerAction: 'all'\n});\n
\n\n\n\nWhether a new request should abort any pending requests. (defaults to false)
\nDefaults to: false
Overrides: Ext.data.Connection.autoAbort
An object containing request headers which are added to each request made by this object\n(defaults to undefined).
\nAn object containing request headers which are added to each request made by this object\n(defaults to undefined).
\nTrue to add a unique cache-buster param to GET requests. (defaults to true)
\nOverrides: Ext.data.Connection.disableCaching
(Optional) Change the parameter which is sent went disabling caching\nthrough a cache buster. Defaults to '_dc'
\nDefaults to: '_dc'
An object containing properties which are used as extra parameters to each request made\nby this object (defaults to undefined). Session information and other data that you need\nto pass with each request are commonly put here.
\nThe default HTTP method to be used for requests. Note that this is case-sensitive and\nshould be all caps (defaults to undefined; if not set but params are present will use\n\"POST\", otherwise will use \"GET\".)
\nAborts any outstanding request.
\ndefaults to the last transaction
\nAdds the specified events to the list of events which this Observable may fire.
\nEither an object with event names as properties with a value of true
\nor the first event name string if multiple event names are being passed as separate parameters.
. Event name if multiple event names are being passed as separate parameters.\nUsage:
\n\nthis.addEvents('storeloaded', 'storecleared');\n
\n\nAppends an event handler to this object.
\nThe name of the event to listen for.
\nThe method the event invokes.
\nThe scope (this
reference) in which the handler function is executed.\nIf omitted, defaults to the object which fired the event.
An object containing handler configuration.\nproperties. This may contain any of the following properties:
this
reference) in which the handler function is executed.\nIf omitted, defaults to the object which fired the event.\nCombining Options
\nUsing the options argument, it is possible to combine different types of listeners:
\n
\nA delayed, one-time listener.\n
myDataView.on('click', this.onClick, this, {\nsingle: true,\ndelay: 100\n});
\n\nAttaching multiple handlers in 1 call
\nThe method also allows for a single argument to be passed which is a config object containing properties\nwhich specify multiple handlers.\n
\n
myGridPanel.on({\n'click' : {\n fn: this.onClick,\n scope: this,\n delay: 100\n},\n'mouseover' : {\n fn: this.onMouseOver,\n scope: this\n},\n'mouseout' : {\n fn: this.onMouseOut,\n scope: this\n}\n});
\n\nOr a shorthand syntax:
\n
myGridPanel.on({\n'click' : this.onClick,\n'mouseover' : this.onMouseOver,\n'mouseout' : this.onMouseOut,\n scope: this\n});
\n\nEnables events fired by this Observable to bubble up an owner hierarchy by calling\nthis.getBubbleTarget()
if present. There is no implementation in the Observable base class.
This is commonly used by Ext.Components to bubble events to owner Containers. See Ext.Component.getBubbleTarget. The default\nimplementation in Ext.Component returns the Component's immediate owner. But if a known target is required, this can be overridden to\naccess the required target more quickly.
\n\n\nExample:
\n\n\nExt.override(Ext.form.Field, {\n // Add functionality to Field's initComponent to enable the change event to bubble\n initComponent : Ext.form.Field.prototype.initComponent.createSequence(function() {\n this.enableBubble('change');\n }),\n\n // We know that we want Field's events to bubble directly to the FormPanel.\n getBubbleTarget : function() {\n if (!this.formPanel) {\n this.formPanel = this.findParentByType('form');\n }\n return this.formPanel;\n }\n});\n\nvar myForm = new Ext.formPanel({\n title: 'User Details',\n items: [{\n ...\n }],\n listeners: {\n change: function() {\n // Title goes red if form has been modified.\n myForm.header.setStyle('color', 'red');\n }\n }\n});\n
\n\nFires the specified event with the passed parameters (minus the event name).
\n\n\nAn event may be set to bubble up an Observable parent hierarchy (See Ext.Component.getBubbleTarget)\nby calling enableBubble.
\n\nThe name of the event to fire.
\nVariable number of parameters are passed to handlers.
\nreturns false if any of the handlers return false otherwise it returns true.
\nChecks to see if this object has any listeners for a specified event
\nThe name of the event to check for
\nTrue if the event is being listened for, else false
\nDetermine whether this object has a request outstanding.
\ndefaults to the last transaction
\nTrue if there is an outstanding request.
\nAppends an event handler to this object (shorthand for addListener.)
\nThe type of event to listen for
\nThe method the event invokes
\nThe scope (this
reference) in which the handler function is executed.\nIf omitted, defaults to the object which fired the event.
An object containing handler configuration.
\nRelays selected events from the specified Observable as if the events were fired by this.
\nThe Observable whose events this object is to relay.
\nArray of event names to relay.
\nRemoves an event handler.
\nThe type of event the handler was associated with.
\nThe handler to remove. This must be a reference to the function passed into the addListener call.
\nThe scope originally specified for the handler.
\nSends an HTTP request to a remote server.
\n\n\nImportant: Ajax server requests are asynchronous, and this call will\nreturn before the response has been received. Process any returned data\nin a callback function.
\n\n\nExt.Ajax.request({\n url: 'ajax_demo/sample.json',\n success: function(response, opts) {\n var obj = Ext.decode(response.responseText);\n console.dir(obj);\n },\n failure: function(response, opts) {\n console.log('server-side failure with status code ' + response.status);\n }\n});\n
\n\n\nTo execute a callback function in the correct scope, use the scope option.
\n\nAn object which may contain the following properties:
True if the form object is a file upload (will be set automatically if the form was\nconfigured with enctype \"multipart/form-data\").
\n\n\nFile uploads are not performed using normal \"Ajax\" techniques, that is they are not\nperformed using XMLHttpRequests. Instead the form is submitted in the standard manner with the\nDOM <form> element temporarily modified to have its\ntarget set to refer\nto a dynamically generated, hidden <iframe> which is inserted into the document\nbut removed after the return data has been gathered.
\n\n\nThe server response is parsed by the browser to create the document for the IFRAME. If the\nserver is using JSON to send the return object, then the\nContent-Type header\nmust be set to \"text/html\" in order to tell the browser to insert the text unchanged into the document body.
\n\n\nThe response text is retrieved from the document, and a fake XMLHttpRequest object\nis created containing a responseText property in order to conform to the\nrequirements of event handlers and callbacks.
\n\n\nBe aware that file upload packets are sent with the content type multipart/form\nand some server technologies (notably JEE) may require some custom processing in order to\nretrieve parameter names and parameter values from the packet content.
\n\n\nThe options object may also contain any other property which might be needed to perform\npostprocessing in a callback because it is passed to callback functions.
\n\ntransactionId The id of the server transaction. This may be used\nto cancel the request.
\nResume firing events. (see suspendEvents)\nIf events were suspended using the queueSuspended parameter, then all\nevents fired during event suspension will be sent to any listeners now.
\nSuspend the firing of all events. (see resumeEvents)
\nPass as true to queue up suspended events to be fired\nafter the resumeEvents call instead of discarding all suspended events;
\nRemoves an event handler (shorthand for removeListener.)
\nThe type of event the handler was associated with.
\nThe handler to remove. This must be a reference to the function passed into the addListener call.
\nThe scope originally specified for the handler.
\nFires before a network request is made to retrieve a data object.
\nThis Connection object.
\nThe options config object passed to the request method.
\nFires if the request was successfully completed.
\nThis Connection object.
\nThe XHR object containing the response data.\nSee The XMLHttpRequest Object\nfor details.
\nThe options config object passed to the request method.
\nFires if an error HTTP status was returned from the server.\nSee HTTP Status Code Definitions\nfor details of HTTP status codes.
\nThis Connection object.
\nThe XHR object containing the response data.\nSee The XMLHttpRequest Object\nfor details.
\nThe options config object passed to the request method.
\n