views:

51

answers:

1

When sending data via POST or GET with jQuery you use for format { name:"value" } so i thought, is there a way to do it with this kind of code:

var postdata = array();
postdata['name'] = "data";
$.post("page.php", postdata, function(data)
{
    alert(data);
}

I tried this, and it doesn't seem to work. Is there a proper way to do this?

+1  A: 

What you are trying to initialize is an object, not an array. You can initialize objects in two ways:

var postdata = {};

Or:

var postdata = new Object();

Then you can assign keys and values just like you intended:

postdata['name'] = "data";

Or:

postdata.name = "data";

You can also build your object in the initialization phase:

postdata = {
    name: "data"
}
Tatu Ulmanen
hmm, no avail. I just get a parse error, same as before. :(
tarnfeld
What parse error?
Tatu Ulmanen
ahhh! haha i forgot to close the `});` with `);` with the previous IF statement :) sorry, works now :D:D
tarnfeld