У меня есть форма с 4 группами флажков, используемых для уточнения результатов поиска. Я хочу иметь возможность опубликовать массив для каждой группы флажков, содержащий идентификаторы флажков в настоящее время отмечены.
$.ajax({
url: "/stay_in_belfast/accommodation",
type: "POST",
data: {
subcategory_ids:$(":checkbox[name^='subcategory_ids[']").serialize(),
rating_ids:$(":checkbox[name^='rating_ids[']").serialize(),
location_ids:$(":checkbox[name^='location_ids[']").serialize(),
facility_ids:$(":checkbox[name^='facility_ids[']").serialize()
},
success: function( data ) {
}
});
Когда я публикую это, хотя мой массив содержит четыре переменные, как и ожидалось, за исключением того, что данные выглядят так:
subcategory_ids%5B%5D=22&subcategory_ids%5B%5D=23&subcategory_ids%5B%5D=24&subcategory_ids%5B%5D=26&subcategory_ids%5B%5D=27&subcategory_ids%5B%5D=28
Если я использую serializeArray, то каждая из четырех переменных поста содержит парный массив name с входным именем и значением. Однако имя входа всегда будет именем группы входа для этой группы и, следовательно, для меня бесполезно. Если я попробую это сделать, просто отправлю одну группу через
$.ajax({
url: "/stay_in_belfast/accommodation",
type: "POST",
data: $(":checkbox[name^='subcategory_ids[']").serialize(),
success: function( data ) {
}
});
Показывает сообщение в виде массива идентификаторов. Я не могу понять, почему все по-другому, если я публикую одну группу или четыре группы.
В принципе, все, что я хочу в своем посте, - это 4 массива, идентифицированных по их группе ввода, причем каждый массив содержит список идентификаторов. Я уверен, что это возможно, но я просто скучаю по нему.
Спасибо.