OOP ajax 以避免代码重复


OOP ajax to avoid code duplication

            var ajaxquery= $.ajax({
                url: "backend.php",
                type: "POST",
                data: {data:data},
                dataType: "text"
            });

例如,我需要在用户交互时发送多个数据。 例如,对于上面的代码,它用于将数据插入后端。但我还有其他操作,如更新和删除,以及许多其他字段。我计划OOP上面的代码来重用它,但它与功能不同。我期待这样的事情:

var insert = new ajaxquery(url,data,callback);
var delete = new ajaxquery(url,data,callback);

可能?

您可以使用闭包来实现这一点:

function ajaxQuery(url,callback) {
  return function(data) {
     return $.ajax({
                url: url,
                type: "POST",
                data: {data:data},
                dataType: "text",
                success: callback
            });
    }
  }
}
var insert = ajaxquery(url,callback);
insert("somedata");
insert("another data");
var deleteFn = ajaxquery(url2,callback2);
deleteFn("field");
deleteFn("another Field");