2012-09-29 76 views
0

我使用ajaxQ排隊劇本,我的職務要求我做,但是$就功能是有點亂,我不需要任何的它提供超過$ .post的額外選項。任何人都知道$ .post請求的排隊系統?

我希望把這個:

 $.ajaxq('queue', { 

     type: 'POST', 
     url: baseURL + '/ChangeItem/Check', 
     dataType: 'text', 
     data: { 
      'newItem': item, 
      'purchaseItem': false 
     }, 
     error: function(jqXHR, textStatus) { 
      alert("Error: " + textStatus); 
     }, 
     success: function(data) { 
      if(thisObject.isNotTaken(data)) thisObject.claimItem(item); 
       else thisObject.proccessResults(list, index+1); 
     } 
    }); 

弄成短和清潔這樣的:

$.post(baseURL + '/ChangeItem/Check, { 'newItem': item, 'purchaseItem': false }, 
    function(data) { /* Success function here */ }); 

回答

1

你可以創建自己的$.postq()/$.getq()方法將作爲快捷方式$.ajaxq()。就像$.post()一樣爲$.ajax()https://github.com/jquery/jquery/blob/master/src/ajax.js#L223

jQuery.each(["getq", "postq"], function(i, method) { 
    jQuery[method] = function(url, data, callback, type) { 
     // shift arguments if data argument was omitted 
     if (jQuery.isFunction(data)) { 
      type = type || callback; 
      callback = data; 
      data = undefined; 
     } 

     return jQuery.ajaxq({ 
      type: method, 
      url: url, 
      data: data, 
      success: callback, 
      dataType: type 
     }); 
    }; 
});