make ajax calls with jQuery
// GET Request
$.ajax({
url: "example.php?firstParam=Hello&secondParam=World", //you can also pass get parameters
dataType: 'json', //dataType you expect in the response from the server
timeout: 2000
}).done(function (data, textStatus, jqXHR) {
//your code here
}).fail(function (jqXHR, textStatus, errorThrown) {
console.log("jqXHR:" + jqXHR);
console.log("TestStatus: " + textStatus);
console.log("ErrorThrown: " + errorThrown);
});
//POST Request
var formData = {name: "John", surname: "Doe", age: "31"}; //Array
$.ajax({
url: "example.php",
type: "POST", // data type (can be get, post, put, delete)
data: formData, // data in json format
timeout: 2000, //Is useful ONLY if async=true. If async=false it is useless
async: false, // enable or disable async (optional, but suggested as false if you need to populate data afterwards)
success: function (data, textStatus, jqXHR) {
//your code here
},
error: function (jqXHR, textStatus, errorThrown) {
console.log("jqXHR:" + jqXHR);
console.log("TestStatus: " + textStatus);
console.log("ErrorThrown: " + errorThrown);
}
});
//Alternatively, the old aproach is
$.ajax({
url: "api.php?action=getCategories",
dataType: 'json',
timeout: 2000,
success: function (result, textStatus, jqXHR) { //jqXHR = jQuery XMLHttpRequest
/*You could put your code here but this way of doing it is obsolete. Better to use .done()*/
},
error: function (jqXHR, textStatus, errorThrown) {
console.log("jqXHR:" + jqXHR);
console.log("TestStatus: " + textStatus);
console.log("ErrorThrown: " + errorThrown);
}
});