2017-09-13 49 views
0

通常當我需要使用相同的功能與一些修改,我必須複製/粘貼功能,然後添加一些變量(有時代碼很長)Jquery的,我怎麼能調用同一個功能,無需重寫

例如: 第一˚F結

   $.ajax({ 
       type: 'GET', 
       url: url, 
       data: {s: size}, 
       dataType: 'json', 
       success: function (data) { 
       //data 

在第二函數I必須在數據添加一個變量(成功的數據將是相同的第一功能):

   $.ajax({ 
       type: 'GET', 
       url: url, 
       data: {s: size, f:from}, 
       dataType: 'json', 
       success: function (data) { 
       //data 

如何在不重寫全部的情況下調用第一個函數?

+1

您可以將AJAX調用放在其自己的函數中,並將該數據對象作爲參數傳遞。 –

回答

2

您可以擁有一個功能並將數據傳遞給它,並在給定的data函數內調用您的$ajax。您也可以將回調傳遞給它以使其更靈活。

function makeAjax(data, success, error){ 
    $.ajax({ 
      type: 'GET', 
      url: url, 
      data: data, 
      dataType: 'json', 
      success: success, 
      error: error 
     }); 
} 
+0

再次請關閉明顯的重複項,而不是回答它們。 – Cerbrus

0

將您的AJAX請求包含在一個函數中,並將您的數據作爲參數傳遞。

function ajax_request(request_data) { 
    $.ajax({ 
     type: 'GET', 
     url: url, 
     data: request_data, 
     dataType: 'json', 
     success: function (data) { 
      //do something here 
     } 
    }); 
}