Помогите с выпадающим списком

Василич#
На сайте с 10.03.2009
Offline
111
690

Есть выпадающий список. Пример по ссылке (правый блок - "фильтр").

Суть вопроса:

Например для поля "Производитель", при выборе опции, чтобы отображалось под полем что выбрано.

Вот сам код:

			<?php if ($filter['style_id'] == 'select') { ?>
<div class="filter-item filter-item-select">
<div class="filter-item-select-head"><?php echo $filter['name']; ?><div class="filter-item-select-button"></div></div>
<div class="filter-item-select-list">
<ul>
<?php foreach ($filter['filters'] as $filter_value) { ?>
<?php if ($filter_value['count'] || !$count_enabled) { ?>
<li><input type="checkbox" <?php if($filter_value['active']) { ?>checked="checked"<?php } ?>><a href="<?php echo $filter_value['href']; ?>" <?php if($filter_value['active']) { ?>class="filter_active"<?php } ?> data-key="<?php echo $filter_value['key']; ?>" data-value="<?php echo $filter_value['value']; ?>"><?php echo $filter_value['name']; ?></a> <?php echo $filter_value['view_count']; ?></li>
<?php } else { ?>
<li><input type="checkbox" disabled="disabled"><?php echo $filter_value['name']; ?> <?php echo $filter_value['view_count']; ?></li>
<?php } ?>
<?php } ?>
</ul>
</div>
</div>
<?php } ?>

Как не пытался своими силами, ничего не получается.

Прошу помощи, может кто знает как это реализовать ? Уверен, что здесь есть люди которые знают :)

Заранее спасибо всем, кто откликнется

bmw-power.com.ua (https://bmw-power.com.ua)
R
На сайте с 18.12.2009
Offline
92
#1

Дело в том, что Вы используете не select список, а его "имитацию", построенную на "дивах" и ul списках.

Вешайте события на выбор, чтобы выбранный из списка div перекрывал/заменял блок.

Василич#
На сайте с 10.03.2009
Offline
111
#2
rerighter:
Вешайте события на выбор, чтобы выбранный из списка div перекрывал/заменял блок.

прежде всего спасибо! Можно поконкретнее ? Как это реализовать ?

H
На сайте с 09.10.2012
Offline
11
#3

Под полем - под select?

Готовый код писать не буду, но реализация будет примерно такая:

1. сделать дополнительный блок под каждым select'ом. я для примера задам ему класс selected

2. написать функцию, которая будет обходить все checkbox'ы на странице, привязать ее к загрузке страницы и щелчку по checkbox.

Выглядеть она будет примерно так (я не проверял синтаксис и рассчитываю на то, что вы хотя бы немного знаете jQuery):


//обходим все фильтры
function update_filter()
{
$('.filter-item').each(function()
{
var that = $(this);
//результат выполнения в виде массива
var result = [];
//обходим все checkbox в конкретном фильтре
$('input[type=checkbox]',that).each(function()
{
//checkbox нажат?
if ($(this).prop('checked'))
{
var parent = $(this).parent();
//Добавляем текст выбранного элемента в результирующий массив
var text = $('a',parent).text();
result.push(text);
}
});
//обновляем информацию в нашем блоке, где перечислены все выбранные checkbox
$('.selected',that).html(result.join(','));
});
}
$(document).ready(function()
{
//будем обновлять данные по щелчку на фильтр
$('.filter-item input[type=checkbox]').click(function()
{
update_filter();
});
//и обновим один раз при загрузке страницы
update_filter();
});
R
На сайте с 18.12.2009
Offline
92
#4

hedint, извините, но Вы смотрели код? Там select вообще не используется.

Василич#
На сайте с 10.03.2009
Offline
111
#5
hedint:
Под полем - под select?
Готовый код писать не буду, но реализация будет примерно такая:
1. сделать дополнительный блок под каждым select'ом. я для примера задам ему класс selected
2. написать функцию, которая будет обходить все checkbox'ы на странице, привязать ее к загрузке страницы и щелчку по checkbox.
Выглядеть она будет примерно так (я не проверял синтаксис и рассчитываю на то, что вы хотя бы немного знаете jQuery)

Прежде всего спасибо что откликнулись. Эх..... если бы знал jquery возможно сам реализовал....

Пожалуйста, помогите мне, я чайник. Ну оооочень нужно.

Заранее благодарен !

H
На сайте с 09.10.2012
Offline
11
#6

2 rerighter

а вы смотрели мой код? :)

там где-то есть select?:)

я немножко неточно сказал в первой строке про "под select" просто для удобства, что оно выглядит как select, это неточность, да. :)

Василич#
На сайте с 10.03.2009
Offline
111
#7

hedint, и всё таки можно подробнее ? :(

Понимаю, за меня никто это не собирается делать, но очень нужно реализовать...

H
На сайте с 09.10.2012
Offline
11
#8

сейчас напишу в личку.

Василич#
На сайте с 10.03.2009
Offline
111
#9
hedint:
сейчас напишу в личку.

большое спасибо.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий