Всем доброго времени суток. Подскажите, пожалуйста, саму идею, как сделать фильтр как инет-магазинах?
Т.е., есть, к примеру, три блока
1. Бренд
2. Память
3. Камера
Как при выборе бренда сделать так, чтобы блок Память, Камера, и сами товары, которые соответствуют запросу бренда отобразились?
К примеру, выбираю бренд Асус, из памяти есть только 6 ГБ (2 шт) и камера размером 10 и 12 мпикс соответственно.
Т.е., Асус (чекбокс чекед)
Обновление:
2. Память
----- 6 ГБ (2 шт) (чекбокс не выбран)
3. Камера
------ 10 мпикс (1 шт) (чекбокс не выбран)
------ 12 мпикс (2 шт) (чекбокс не выбран)
4. Отображено 2 позиции бренда соответственно с 10 и 12 мпикс камерами.
Т.е., это зависимые чекбоксы. Только как с ними работать не могу понять.
Какая логика и как и куда передается?
Изначально делал так :
В index.php выводил все 4 блока (3 блока фильтров) + блок самих записей.
Подключал аякс. Но в аяксе можно сделать только один запрос, т.е., обновить один блок. Это он делает на ура. А остальные блоки как обновить то? Никак не могу сообразить. Поскольку после загрузки данных по блокам после аякс запроса, доступ получить к ним не получается.
Собственно, как это все логично и правильно можно связать? Может есть какие примеры?
Делаю так вот:
$(document).ready(function(){
$('.select').on('click', function() {
var category = [];
$("input[name=category]:checked").each(function() {
category.push($(this).val());
return category;
});
var ram = [];
$("input[name=ram]:checked").each(function() {
ram.push($(this).val());
//alert(plateform);
return ram;
});
//var cat = "<?php echo "$_POST['category']"; ?>";
//var formdata = $("#checkform").serialize();
$.ajax({
url: "select.php",
type: "post",
//dataType: "json",
data: {category:category},
success: function(data){
console.log(data);
$('.result').html(data);
}
});
});
return false;
});
Категория, т.е, бренд, передается хорошо, в файле селект идет обработка и выводится Память, которая соответствует только выбранным брендам. Данные как к этому запросу вывести так же сообразить не могу...
Заранее благодарю.