diff options
Diffstat (limited to 'lib/extensions')
-rw-r--r-- | lib/extensions/jquery.jtable.aspnetpagemethods.js | 71 | ||||
-rw-r--r-- | lib/extensions/jquery.jtable.aspnetpagemethods.min.js | 6 |
2 files changed, 51 insertions, 26 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 */
diff --git a/lib/extensions/jquery.jtable.aspnetpagemethods.min.js b/lib/extensions/jquery.jtable.aspnetpagemethods.min.js index 974253e..85a2c6a 100644 --- a/lib/extensions/jquery.jtable.aspnetpagemethods.min.js +++ b/lib/extensions/jquery.jtable.aspnetpagemethods.min.js @@ -22,6 +22,6 @@ 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(c){c.extend(!0,c.hik.jtable.prototype,{_performAjaxCall:function(b,a,d,g,e){var f=this;null==a||void 0==a?a={}:"string"==typeof a&&(a=f._convertQueryStringToObject(a));var h=b.indexOf("?");-1<h&&c.extend(a,f._convertQueryStringToObject(b.substring(h+1)));a=JSON.stringify(a);c.ajax({url:b,type:"POST",dataType:"json",contentType:"application/json; charset=utf-8",data:a,async:d,success:function(a){a=f._normalizeJSONReturnData(a);g(a)},error:function(){e()}})},_submitFormUsingAjax:function(b, -a,d,g){var e=this,a={record:e._convertQueryStringToObject(a)},f=b.indexOf("?");-1<f&&c.extend(a,e._convertQueryStringToObject(b.substring(f+1)));a=JSON.stringify(a);c.ajax({url:b,type:"POST",dataType:"json",contentType:"application/json; charset=utf-8",data:a,success:function(a){a=e._normalizeJSONReturnData(a);d(a)},error:function(){g()}})},_convertQueryStringToObject:function(b){for(var a={},d,c=/\+/g,e=/([^&=]+)=?([^&]*)/g;d=e.exec(b);)a[decodeURIComponent(d[1].replace(c," "))]=decodeURIComponent(d[2].replace(c, -" "));return a},_normalizeJSONReturnData:function(b){return b.hasOwnProperty("d")?b.d:b}})})(jQuery);
\ No newline at end of file +(function(d){d.extend(!0,d.hik.jtable.prototype,{_performAjaxCall:function(b,c,a,e,f){this._ajax({url:b,data:c,async:a,success:e,error:f})},_ajax:function(b){var c=this,a=d.extend({},this.options.ajaxSettings,b);null==a.data||void 0==a.data?a.data={}:"string"==typeof a.data&&(a.data=c._convertQueryStringToObject(a.data));var e=a.url.indexOf("?");-1<e&&d.extend(a.data,c._convertQueryStringToObject(a.url.substring(e+1)));a.data=JSON.stringify(a.data);a.contentType="application/json; charset=utf-8"; +a.success=function(a){a=c._normalizeJSONReturnData(a);b.success&&b.success(a)};a.error=function(){b.error&&b.error()};a.complete=function(){b.complete&&b.complete()};d.ajax(a)},_submitFormUsingAjax:function(b,c,a,e){var f=this;c={record:f._convertQueryStringToObject(c)};var g=b.indexOf("?");-1<g&&d.extend(c,f._convertQueryStringToObject(b.substring(g+1)));c=JSON.stringify(c);d.ajax({url:b,type:"POST",dataType:"json",contentType:"application/json; charset=utf-8",data:c,success:function(b){b=f._normalizeJSONReturnData(b); +a(b)},error:function(){e()}})},_convertQueryStringToObject:function(b){for(var c={},a,e=/\+/g,d=/([^&=]+)=?([^&]*)/g;a=d.exec(b);)c[decodeURIComponent(a[1].replace(e," "))]=decodeURIComponent(a[2].replace(e," "));return c},_normalizeJSONReturnData:function(b){return b.hasOwnProperty("d")?b.d:b}})})(jQuery);
\ No newline at end of file |