mirror of
https://github.com/tuxis-ie/nsedit.git
synced 2025-05-23 00:15:22 +03:00
Merge commit '8997d5b1ff
' as 'jtable'
This commit is contained in:
commit
d90fb0d2a6
155 changed files with 22323 additions and 0 deletions
150
jtable/lib/extensions/jquery.jtable.aspnetpagemethods.js
Normal file
150
jtable/lib/extensions/jquery.jtable.aspnetpagemethods.js
Normal file
|
@ -0,0 +1,150 @@
|
|||
/*
|
||||
|
||||
ASP.NET WEB FORMS PAGE METHODS EXTENSION FOR JTABLE
|
||||
http://www.jtable.org
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
|
||||
Copyright (C) 2011 by Halil İbrahim Kalkan (http://www.halilibrahimkalkan.com)
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
|
||||
*/
|
||||
(function ($) {
|
||||
|
||||
//extension members
|
||||
$.extend(true, $.hik.jtable.prototype, {
|
||||
|
||||
/* 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;
|
||||
|
||||
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 = opts.url.indexOf('?');
|
||||
if (qmIndex > -1) {
|
||||
$.extend(opts.data, self._convertQueryStringToObject(opts.url.substring(qmIndex + 1)));
|
||||
}
|
||||
|
||||
opts.data = JSON.stringify(opts.data);
|
||||
opts.contentType = 'application/json; charset=utf-8';
|
||||
|
||||
//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 */
|
||||
_submitFormUsingAjax: function (url, formData, success, error) {
|
||||
var self = this;
|
||||
|
||||
formData = {
|
||||
record: self._convertQueryStringToObject(formData)
|
||||
};
|
||||
|
||||
var qmIndex = url.indexOf('?');
|
||||
if (qmIndex > -1) {
|
||||
$.extend(formData, self._convertQueryStringToObject(url.substring(qmIndex + 1)));
|
||||
}
|
||||
|
||||
var postData = JSON.stringify(formData);
|
||||
|
||||
$.ajax({
|
||||
url: url,
|
||||
type: 'POST',
|
||||
dataType: 'json',
|
||||
contentType: "application/json; charset=utf-8",
|
||||
data: postData,
|
||||
success: function (data) {
|
||||
data = self._normalizeJSONReturnData(data);
|
||||
success(data);
|
||||
},
|
||||
error: function () {
|
||||
error();
|
||||
}
|
||||
});
|
||||
},
|
||||
|
||||
_convertQueryStringToObject: function (queryString) {
|
||||
var jsonObj = {};
|
||||
var e,
|
||||
a = /\+/g,
|
||||
r = /([^&=]+)=?([^&]*)/g,
|
||||
d = function (s) { return decodeURIComponent(s.replace(a, " ")); };
|
||||
|
||||
while (e = r.exec(queryString)) {
|
||||
jsonObj[d(e[1])] = d(e[2]);
|
||||
}
|
||||
|
||||
return jsonObj;
|
||||
},
|
||||
|
||||
/* Normalizes JSON data that is returned from server.
|
||||
*************************************************************************/
|
||||
_normalizeJSONReturnData: function (data) {
|
||||
//JSON Normalization for ASP.NET
|
||||
if (data.hasOwnProperty('d')) {
|
||||
return data.d;
|
||||
}
|
||||
|
||||
return data;
|
||||
}
|
||||
});
|
||||
|
||||
})(jQuery);
|
Loading…
Add table
Add a link
Reference in a new issue