Я не знаю о "стандартном способе", но вот как бы я это сделал.
var ids = $("#downloadall").serializeArray();
предоставит вам набор данных в форме (представлены только проверенные элементы):
[{name:"foo1", value:"bar1"}, {name:"foo2", value:"bar2"}]
Чтобы передать это .ajax () jQuery просто:
$.ajax({
url: <your url>,
data: ids.map(function (i) {return i.name+'='+i.value;}).join('&')
});
Array.map () пока не совместим со всеми браузерами, поэтому вам лучше иметь этот код и на своей странице:
if (!Array.prototype.map) {
Array.prototype.map = function(fun /*, thisp*/) {
var len = this.length >>> 0;
if (typeof fun != "function")
throw new TypeError();
var res = new Array(len);
var thisp = arguments[1];
for (var i = 0; i < len; i++) {
if (i in this)
res[i] = fun.call(thisp, this[i], i, this);
}
return res;
};
}
Этот фрагмент кода я получил от центра разработчиков Mozilla .
Я не поместил их в параметр ?ids=...
, но таким образом к ним легко получить доступ на стороне сервера. Вы всегда можете просто изменить функцию карты в соответствии со своими потребностями.