Development

Ajax technique and JQuery Methods

Most of all popular websites on internet use the technique of AJAX, it’s important to clarify that AJAX is NOT a programming language, as the subtitle says it’s a technique.

AJAX technique is helpful when you try to manipulate information without reloading the entire page. As we know AJAX is the acronym of Asynchronous JavaScript And XML so while all the functions are working with Javascript, the access data works with XMLHttpRequest. AJAX is an asynchronous technology in the sense that the additional data is requested to the server and this information loads on the background without “touching” the views and the rest of the page. By this way is possible interact with the information displayed without reloading the site, getting a better speed and usability on the applications.

AJAX can work with different languages like php and of course javascript and js libraries commonly with JQuery Library, also AJAX works with techniques like json and can be implemented on different frameworks, as the developer wishes.

How AJAX work?

The following image describes the process request when someone uses AJAX

AJAX and JQuery

On JQuery there are many different methods to produce AJAX, those methods can be useful but it depends on what task is going to be solved,and the application’s needs. JQuery documentation divides these methods on “High Level” and “Low Level” .

The Low Level functions are closer to the browser AJAX, more customizable and more powerful. The High Level functions have an interface and are simpler, but also those are less powerful because they were created for a use defined.

In all cases most of JQuery functions are High Level except JQuery.AJAX() which is Low Level along with other methods that usually we are not going to use.

JQuery.AJAX()

This is a method that we can use to make any kind of behavior for our project, also we can find this method as $.AJAX() so JQuery.AJAX() it’s equals to $.AJAX()

The following example uses JQuery AJAX to obtain a json object from the url “http://api.openweathermap.org/data/2.1/weather/city/caracas?type=json“.
The parameters used are:

  • url: The address where the info will be sent
  • type: Type of request, can be GET, POST , PUT, DELETE. In case of use POST or PUT we can send an object or other parameter to the same function calling “data”, for example data: { ‘key’ : ‘value’ }
  • datatype: The type of response expected.
 <!DOCTYPE html> <html> <head>   <!-- Here we are calling to JQuery library -->   <script src="http://code.jquery.com/jquery-2.1.0.min.js"></script>   <meta charset="utf-8">   <title>jQuery Ajax</title>   <script>     function testAjax(){       $.ajax({         //JQuery.AJAX() method         //the url wher the data will be sending, in this case is a api url         url: 'http:         //api.openwheathermap.org/data/2.1/weather/city/caracas',         type: 'GET',          //se epecify what kind of request are using         dataType: "jsonp",          //the data type in this case JSON         success: function(data){           //if the function success obtain the info           $('body').append('' + JSON.stringify(data, null, 2) + '');         },         error: function(jqXHR, testStatus, error){          //in case that error occurs         alert("error: " + jqXHR.responseText);         }       });     } </script> </head> <body> <!-- Our button that are calling the method testAjax() -->   <button >



So if we test our page and click on the test button the data is displayed

 <script type="text/javascript">   $("#element").load("mypage.html"); </script>

.load()

This method can be used to load data on a website element. Just indicates the URL of the file that we want and the method update the HTML of the element. This method doesn’t accept any parameter and just makes the function of load, nothing else.

 <script type="text/javascript">   $("#element").load("mypage.html"); </script>

Also we can send data by GET method, just indicates the data inside the url.

 <script type="text/javascript">   $("#element").load("mypage.php?data=12qw"); </script>

$.get() and $.post()

Two brother methods that do the same task: an AJAX connection sending data to the server. The difference is that $.get() send data via GET (in the url) and $.post() send data via POST (in HTTP headers).

On these methods we send parameters but it is not an obligation, just the first one.

 <script type="text/javascript">   $.get("url.php", {     data1: "value1",     data2: "value2"   }, function(response){     $("#result").html(data);   }, "html"); </script>

$.getScript()

This method loads a JavaScript file in a specific address

 <script type="text/javascript">   $.getScript("www.myurl.com/ajax/filejs.js", function(data, textStatus, jqxhr){     alert("success");   }); </script>

This is equal to use:

 <script type="text/javascript">   $.ajax({     url: "http://myURL.com/ajax/myscript.js",     dataType: "script",     success: function(data, textStatus, jqxhr){       alert("Success");     }   }); </script>

$.getJSON

Here we specify the response type , in case of expect jsonp you must add ‘callback=?’ to the url.
 

 <script type="text/javascript">   $.getJSON("http://api.openweathermap.org/data/2.1/weather/city/caracas?callback=?",     function(){       alert("success");     }); </script>

And with $.ajax() method is equal to:

 <script type="text/javascript">   $.ajax({     url: "http://api.openweathermap.org/data/2.1/weather/city/caracas",     type: 'GET',     dataType: "script",     success: function(){       alert("Success");     }   }); </script>

This is a global vision on how AJAX and JQuery work I hope this post was clear and you can understand the importance of this technique when you want to develop a project. In the next entry blog we can develop an application with ajax and if you have any doubts send us an email or Contact Us Here!”

Disqus Comments Loading...
Published by
DevOps Guy

Recent Posts

Web Application Architecture: The Latest Guide 2024

When a user logs on to this desktop/laptop or mobile, opens a browser and types…

2 days ago

Low-Code Development for Business Success

Low-code development is great news for businesses, reducing time-to-market for apps, and allocating costs more…

4 days ago

PHP Latest Versions Guide | Video

So, have you caught wind of the latest PHP update? If you not, this PHP…

2 weeks ago

ECS vs EC2: Choosing the Right AWS Service for Your Workloads

When it comes to AWS ECS vs EC2, the choice boils down to your specific…

3 weeks ago

Netflix Architecture | A Look Into Its System Architecture

Ever wondered how Netflix keeps you glued to your screen with uninterrupted streaming bliss? Netflix…

3 weeks ago

Snowflake vs Redshift: Key Differences

In today's busy world, where information is important, handling data well is crucial for success.…

1 month ago