2017-09-13 33 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 
     } 
    }); 
}