diff options
Diffstat (limited to 'lib/extensions/jquery.jtable.aspnetpagemethods.js')
-rw-r--r-- | lib/extensions/jquery.jtable.aspnetpagemethods.js | 71 |
1 files changed, 48 insertions, 23 deletions
diff --git a/lib/extensions/jquery.jtable.aspnetpagemethods.js b/lib/extensions/jquery.jtable.aspnetpagemethods.js index 307381d..17b2a2c 100644 --- a/lib/extensions/jquery.jtable.aspnetpagemethods.js +++ b/lib/extensions/jquery.jtable.aspnetpagemethods.js @@ -27,42 +27,67 @@ THE SOFTWARE. */
(function ($) {
-
+
//extension members
$.extend(true, $.hik.jtable.prototype, {
- /* OVERRIDES BASE METHOD */
+ /* OVERRIDES BASE METHOD.
+ * THIS METHOD IS DEPRECATED AND WILL BE REMOVED FROM FEATURE RELEASES.
+ * USE _ajax METHOD.
+ *************************************************************************/
_performAjaxCall: function (url, postData, async, success, error) {
+ this._ajax({
+ url: url,
+ data: postData,
+ async: async,
+ success: success,
+ error: error
+ });
+ },
+
+ /* OVERRIDES BASE METHOD */
+ _ajax: function (options) {
var self = this;
- if (postData == null || postData == undefined) {
- postData = {};
- } else if (typeof postData == 'string') {
- postData = self._convertQueryStringToObject(postData);
+ var opts = $.extend({}, this.options.ajaxSettings, options);
+
+ if (opts.data == null || opts.data == undefined) {
+ opts.data = {};
+ } else if (typeof opts.data == 'string') {
+ opts.data = self._convertQueryStringToObject(opts.data);
}
- var qmIndex = url.indexOf('?');
+ var qmIndex = opts.url.indexOf('?');
if (qmIndex > -1) {
- $.extend(postData, self._convertQueryStringToObject(url.substring(qmIndex + 1)));
+ $.extend(opts.data, self._convertQueryStringToObject(opts.url.substring(qmIndex + 1)));
}
- postData = JSON.stringify(postData);
+ opts.data = JSON.stringify(opts.data);
+ opts.contentType = 'application/json; charset=utf-8';
- $.ajax({
- url: url,
- type: 'POST',
- dataType: 'json',
- contentType: "application/json; charset=utf-8",
- data: postData,
- async: async,
- success: function (data) {
- data = self._normalizeJSONReturnData(data);
- success(data);
- },
- error: function () {
- error();
+ //Override success
+ opts.success = function (data) {
+ data = self._normalizeJSONReturnData(data);
+ if (options.success) {
+ options.success(data);
}
- });
+ };
+
+ //Override error
+ opts.error = function () {
+ if (options.error) {
+ options.error();
+ }
+ };
+
+ //Override complete
+ opts.complete = function () {
+ if (options.complete) {
+ options.complete();
+ }
+ };
+
+ $.ajax(opts);
},
/* OVERRIDES BASE METHOD */
|