47

I'm trying to do a jquery GET and i want to send a parameter.

here's my function:

$(function() {
    var availableProductNames;
    $.get("manageproducts.do?option=1", function(data){
        availableProductNames = data.split(",");;
        alert(availableProductNames);
        $("#nameInput").autocomplete({
            source: availableProductNames
        });
    });
});

This doesn't seem to work; i get a null in my servlet when i use request.getParameter("option");

If i type the link into the browser http://www.myite.com/manageproducts.do?option=1 it works perfectly.

I also tried:

$.get(
    "manageproducts.do?",
    {option: "1"},
    function(data){}

which doesn't work either.

Can you please help me?

EDIT:

also tried

       $.ajax({
      type: "GET",
      url: "manageproducts.do",
     data: "option=1",
     success: function(msg){
        availableProductNames = msg.split(",");
        alert(availableProductNames);
        $("#nameInput").autocomplete({
        source: availableProductNames
    });   
     }
      });

Still getting the same result.

1
  • 2
    you were right i had a typo. it works with $.get("manageproducts.do", {option: "1"}, function(data){ Commented Sep 25, 2011 at 7:55

4 Answers 4

71

If you say that it works with accessing directly manageproducts.do?option=1 in the browser then it should work with:

$.get('manageproducts.do', { option: '1' }, function(data) {
    ...
});

as it would send the same GET request.

Sign up to request clarification or add additional context in comments.

1 Comment

I was trying to pass an object into .get(), with the info as properties of that object. But as this answer shows, don't pass an object.
10

Try this:

$.ajax({
    type: 'get',
    url: 'manageproducts.do',
    data: 'option=1',
    success: function(data) {

        availableProductNames = data.split(",");

        alert(availableProductNames);

    }
});

Also You have a few errors in your sample code, not sure if that was causing the error or it was just a typo upon entering the question.

Comments

4

I got this working : -

$.get('api.php', 'client=mikescafe', function(data) {
...
});

It sends via get the string ?client=mikescafe then collect this variable in api.php, and use it in your mysql statement.

1 Comment

I have a function that returns the parameters for my $.get. Removing the curly brackets solved my issue. Thanks!
3

This is what worked for me:

$.get({
    method: 'GET',
    url: 'api.php',
    headers: {
        'Content-Type': 'application/json',
    },
    // query parameters go under "data" as an Object
    data: {
        client: 'mikescafe'
    }
});

will make a REST/AJAX call - > GET http://localhost:3000/api.php?client=mikescafe

Good Luck.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.