Вы не можете передать массив напрямую, вам нужно сначала его кодировать, а затем передать. Например, вы можете использовать json2.js из json.org , чтобы закодировать его как JSON:
var mydata = JSON.stringify(myarr);
$.ajax
({
type: "POST",
dataType: "text",
url: "myurl",
data: {"mydata" : mydata}
});
Тогда вам нужно будет использовать json_decode в PHP для преобразования строки JSON обратно в массив.
Обновление
Чтобы ответить на ваши новые вопросы:
Как инициализировать новый объект javascript как "пустой"?
Вы можете создать новый объект, например, так:
var myObj = {};
Как настроить сопоставления?
Есть несколько способов:
myObj.name = "Me!";
myObj['name'] = "Me!";
Как передать его в вызове AJAX?
Просто передайте его напрямую как аргумент data
:
data: myObj