Google News
logo
jQuery AJAX get() and post() Methods
The jQuery AJAX get() and post() methods are used to request data from the server with an HTTP GET or POST methods .

HTTP Request: GET vs. POST

The jQuerys ajax two commonly used methods for a send and retrieve data asynchronously from a client and web server. 

GET : jQuery get() method is requests data from a specified resource
POST : jQuery post() method is submits data to be processed to a specified resource

Both the methods are pretty much identical, apart from one major difference : the $.get() makes Ajax requests using the HTTP GET method, whereas the $.post() makes Ajax requests using the HTTP POST method.

jQuery $.get() Method

The $.get() method requests data from the server with an HTTP GET request.
Syntax

$.get(URL,callback);

The above syntax have the following meaning :

  • The required URL parameter specifies the URL to which the request.
  • The optional data parameter specifies a set of query string (i.e. key/value pairs) that is sent to the web server along with the request.
  • The optional callback parameter is the name of a function to be executed if the request succeeds. It is typically used to retrieve the returned data.

The following example uses the jQuery $.get() method to make an Ajax request to the "get-demo.php" file using HTTP GET method. It simply retrieves the date and time returned from the server and displays it in the browser without refreshing the page.

Include File : get-demo.php

<?php 
date_default_timezone_set('Asia/Kolkata');
$date = date("j-F-Y : h:i A"); 
?>
<style type="text/css">
.color{ color:#0099da;}
</style>
<h3>
 Current Date &amp; Time is : <span class="color"><?php echo $date ?></span>
</h3>

<!DOCTYPE html>
<html>
<head>
<title>jQuery Ajax $.get() Method</title>
<script src="js/jquery-3.2.1.min.js"></script>  
<script type="text/javascript">
$(document).ready(function(){
    $("button").click(function(){
        $.get("get-demo.php", function(data, status){
            $("#get_demo").html(data);
                 alert("Status: " + status);
        });
    });
});
</script>
<style type="text/css">
.btn{ padding:6px 15px;}
</style>
</head>
 
<body>
    <div id="get_demo">
        <h3>jQuery AJAX get() Method. Load the content and replaced in samepage.</h3>
    </div>
    <button type="button" class="btn">Click Here (Date & Time)</button>
</body>
</html>  
 
</head>
<body>
Output :

jQuery $.post() Method

The $.post() method requests data from the server using an HTTP POST request.

Syntax :

$.post(URL,data,callback);

  • The required URL parameter specifies the URL you wish to request.
  • The optional data parameter specifies some data to send along with the request.
  • The optional callback parameter is the name of a function to be executed if the request succeeds.

POST requests are identical to GET requests in jQuery. So, generally which method you should use either $.get()or $.post() is basically depends on the requirements of your server-side code. The following example uses the $.post() method to send some data along with the request :

Include File : post-demo.php

<?php
    $name = $_POST["name"];
   $comment = $_POST["comment"];
   echo "Hi <b><em>$name</em></b>. Your comment has been successfully received." . "<br>";
   echo "You've entered comment is : <b><em> $comment </em></b>";
?>

<!DOCTYPE html>
<html>
<head>
<title>jQuery Ajax $.post() Method</title>
<script src="js/jquery-3.2.1.min.js"></script>  
<script type="text/javascript">
$(document).ready(function(){
    $("form").submit(function(event){
        event.preventDefault();
var actionFile = $(this).attr("action");
        var formValues = $(this).serialize();
        $.post(actionFile, formValues, function(data){
            $("#my_result").html(data);
        });
    });
});
</script>
<style type="text/css">
.btn{ padding:6px 15px;}
.lable{font-size:14px; font-weight:bold; font-style:italic; clear:both;}
.custon_form{border-radius:3px; margin:5px 0px;}
.result{margin:15px 0px 5px; }
</style>
</head>
 
<body>
    <form action="post-demo.php">
        <label class="lable">Name:</label> <br>
        <input type="text" name="name" class="custon_form" required /><br>
        <label class="lable">Comment: </label><br>
        <textarea rows="4" cols="50" name="comment" class="custon_form" required></textarea><br>
        <input type="submit" class="btn" value="Send">
    </form>
    <div id="my_result" class="result"></div>
</body>
</html>
Output :