How to pass data parameter to ajax action function handler

I have the following js to process an ajax request:

$('#someelement').click(function() {

        var cokeValue = 'coke';

        var data = {
            action: 'load_post',
            another_par: someVar
        };

        jQuery.post(ajax_object.ajax_url, data, function(response) {
            alert(response);
        });
  });

And this is my ajax handler function (hopefully my terminology is correct):

Read More
add_action('wp_ajax_get_coke', 'get_coke_ajax');
function get_coke_ajax() {

   // need to get another_par in here !!!!!!!

   die();
}

As you can see, the action is load_post which is fine, but I need to pass the another_par parameter to my ajax function so that I can assign its value to a variable and use it for my purposes.

Related posts

1 comment

  1. When you use jQuery.post(), the data is sent as regular $_POST arguments.

    So this JavaScript …

    var data = {
        action: 'load_post',
        foo:    'bar'
    };
    

    … is available in your callback function per:

    $action = $_POST['action'];
    $foo    = $_POST['foo']; // bar
    

    And when you are using jQuery.get(), the data is in $_GET. You can also use $_REQUEST which returns both, GET and POST data (and COOKIE). But you should always ask for the specific resource to avoid injection from sources you didn’t expect, like a cookie.

Comments are closed.