Lav getOffers
returner jqXHR getData
returnerer som nedenfor -
var myApp = (function () {
var Var1 = [];
var getData = function (sendData) {
return $.ajax({
type: "POST",
url: URL,
data: sendData,
datatype: "json",
success: function (results) {}
});
};
var getOffers = function (sendData) {
// return the jqXHR returned by getData
return getData(sendData);
};
return {
getOffers: getOffers
};
})();
jqXHR
objekt returneret af $.ajax({})
er et Promise
-Når du får et successvar for Ajax-anmodningen - kan du vedhæfte en succeshandler som denne - uden for din ajax-anmodning
myApp.getOffers({
'showData': 1,
'myLocation': "Location1",
'clientID': "Client1"
}).done(function (data, textStatus, jqXHR) {
// work with DOM here
});
Mere om Jquery Deferreds/Promises her -
Du har også lavet getData
, getOffers
global ved at mangle var
foran under erklæringen.
I henhold til din kommentar til brug af POST
i stedet for GET
, den generelle tommelfingerregel er - GET
er til hentning af data, POST til lagring - bare fordi du bruger POST
det betyder ikke, at nogen ikke kan opsnuse de data, du sender, det er bare en del af anmodningsteksten i stedet for anmodningens URL. Hvis du mener, at de data, du sender, er virkelig følsomme, bør du overveje at aktivere SSL(HTTPS)
til din app.