Я проверил различные вопросы SOОтправка нескольких групп флажков PHP с помощью AJAX
Но ни один из них не посылать больше, чем один набор флажков.
У меня есть форма с серией флажков:
<input type="checkbox" name="color[]" value="1"/>
<input type="checkbox" name="color[]" value="2"/>
...
<input type="checkbox" name="size[]" value="1"/>
<input type="checkbox" name="size[]" value="2"/>
...
Есть также некоторые другие не флажки на форме.
Я посылаю это PHP с помощью AJAX:
$.ajax({
url: '/filter',
type: 'POST',
data: { filter: $(self.form).serializeArray()},
dataType: 'JSON'
});
Я тогда должен получить каждый набор значений флажок в PHP. Поэтому я выхожу сообщение:
array (size=4)
0 =>
array (size=2)
'name' => string 'color[]' (length=7)
'value' => string '4' (length=1)
1 =>
array (size=2)
'name' => string 'color[]' (length=7)
'value' => string '6' (length=1)
2 =>
array (size=2)
'name' => string 'length[]' (length=8)
'value' => string '3' (length=1)
3 =>
array (size=2)
'name' => string 'length[]' (length=8)
'value' => string '5' (length=1)
Но как я могу получить каждый набор значений? Я хочу var со всеми цветами и var со всеми размерами.
Просто уточнить - я ищу способ в PHP, чтобы получить цвета в массив и еще один массив для lenths.
Что-то вроде:
$_POST['filter']['color'];
Код выглядит хорошо !!! –
'$ (self.form) .serializeArray()' отлично выглядит, и он должен это делать. Вы проверили вывод в консоли? –
Я считаю, что вы попробовали [this] (http://stackoverflow.com/a/9298836/3282633) тоже –