0 Пользователей и 1 Гость просматривают эту тему.
  • 9 Ответов
  • 1404 Просмотров
*

Ragivort

  • Живу я здесь
  • 1010
  • 49
  • Есть мечта-стоит жить
Люди, привет, как в модуле mod_jshopping_filters заменить чекбоксы на кнопки, чтобы не галочки ставить, а кнопку нажал и фильтр сработал, замена checkbox на button не помогает.
Дозволь мне свершить то добро, которое я способен свершить, теперь, ибо я могу более не вернуться сюда.
*

dmitry_stas

  • Профи
  • 10060
  • 955
конечно не помогает, ибо нужен input в форме, чтобы передать какое то значение. более того, помимо передачи значения его ж нужно как то хранить как текущее выбранное. можно попробовать сделать скрытые инпуты, а кнопками в них менять значения, и после этого отправлять форму
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Ragivort

  • Живу я здесь
  • 1010
  • 49
  • Есть мечта-стоит жить
Попробую
Дозволь мне свершить то добро, которое я способен свершить, теперь, ибо я могу более не вернуться сюда.
*

Ragivort

  • Живу я здесь
  • 1010
  • 49
  • Есть мечта-стоит жить
Дк я про <input type="button"
ЧТобы не чекбоксы были а кнопки
там такой код -
Код
    <?php if (is_array($characteristic_displayfields) && count($characteristic_displayfields)){?>
   
        <div class="filter_characteristic">
        <?php foreach($characteristic_displayfields as $ch_id){?>   
            <?php if (is_array($characteristic_fieldvalues[$ch_id])){?>
                 <input type="hidden" name="extra_fields[<?php print $ch_id?>][]" value="0" />           
                <?php foreach($characteristic_fieldvalues[$ch_id] as $val_id=>$val_name){?>
                    <input type="checkbox" name="extra_fields[<?php print $ch_id?>][]" value="<?php print $val_id;?>" <?php if (is_array($extra_fields_active[$ch_id]) && in_array($val_id, $extra_fields_active[$ch_id])) print "checked";?> onclick="document.jshop_filters.submit();" /> <?php print $val_name;?>
                <?php }?>
         
            <?php }?>
        <?php }?>
        </div>
    <?php } ?>

Просто замена checkbox на button не помогает.
это в модуле mod_jshopping_filters
Дозволь мне свершить то добро, которое я способен свершить, теперь, ибо я могу более не вернуться сюда.
*

dmitry_stas

  • Профи
  • 10060
  • 955
не совсем точно выразился. нужен инпут, значение которого способно передаваться в обработчик формы. button этого не умеет. так что либо скрытые инпуты, либо можно попробовать еще сделать кнопки не button, а input type=submit, так как value у submit передается, если задан name. это правда повлечет другие сложности, но можно попытаться
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

flychild

  • Новичок
  • 1
  • 0
Люди, привет, как в модуле mod_jshopping_filters заменить чекбоксы на кнопки, чтобы не галочки ставить, а кнопку нажал и фильтр сработал, замена checkbox на button не помогает.

Конечно можно.. jquery +css. все работает http://followdesign.com/development/2011/11/28/oformlenie-knopok-chekboksov-i-drugih-elementov-interfeysa.html
*

stparts

  • Осваиваюсь на форуме
  • 97
  • 0
Понимаю что тема старая, но может кому-то поможет.
Нужно заменить код
Код
 <input type="checkbox" name="extra_fields[<?php print $ch_id?>][]" value="<?php print $val_id;?>" <?php if (is_array($extra_fields_active[$ch_id]) && in_array($val_id, $extra_fields_active[$ch_id])) print "checked";?> onclick="document.jshop_filters.submit();" /> <?php print $val_name;?><br/>
на
Код
<button name="extra_fields[<?php print $ch_id?>][]" value="<?php print $val_id;?>" onclick="document.jshop_filters.submit();"><?php print $val_name;?></button> 

Это для характеристик. Если нужно для производителя, то так же, только изменив параметры по примеру.
*

stparts

  • Осваиваюсь на форуме
  • 97
  • 0
Теперь и я застрял. Подскажите, нужно заставить кнопку быть активной, при выборе нужной характеристики.
Для чекбокса код <?php if (is_array($extra_fields_active[$ch_id]) && in_array($val_id, $extra_fields_active[$ch_id])) print "checked";?>  я убрал, т.к. он не нужен для button.
Нужно изменить класс кнопки когда активна нужная характеристика.
Решил сделать это скриптом. Добавил в начале файла modules/mod_jshopping_filters/tmpl/default.php , сразу после стандартного скрипта, ещё один скрипт.
Код
<script type="text/javascript">
$(document).ready(function() {
$("#jshop_filters").on("click", ".jfilter_chek", function(){
   $(this).toggleClass("active");
});
}
</script>

Предварительно обернув button в <span class="jfilter_chek">. Скрипт должен добавлять к классу active.
Но потом понял, что работать и не будет, ведь страница обновляется.

Подскажите, ещё вариант задать другой класс кнопке активного элемента.
« Последнее редактирование: 26.08.2016, 22:25:38 от stparts »
*

dmitry_stas

  • Профи
  • 10060
  • 955
я вот не могу понять... зачем надо выдумывать велосипед с этими кнопками вместо того, чтобы чекбокс на CSS сделать в виде кнопки и все
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

stparts

  • Осваиваюсь на форуме
  • 97
  • 0
Действительно, скрытым чекбоксом и CSS всё сделать проще.
Меняем
Код
<input type="checkbox" name="extra_fields[<?php print $ch_id?>][]" value="<?php print $val_id;?>" <?php if (is_array($extra_fields_active[$ch_id]) && in_array($val_id, $extra_fields_active[$ch_id])) print "checked";?> onclick="document.jshop_filters.submit();" /> <?php print $val_name;?><br/>

на
Код
<label><span class="button_checkbox"><input type="checkbox" hidden name="extra_fields[<?php print $ch_id?>][]" value="<?php print $val_id;?>" <?php if (is_array($extra_fields_active[$ch_id]) && in_array($val_id, $extra_fields_active[$ch_id])) print "checked";?> onclick="document.jshop_filters.submit();" /> <span><?php print $val_name;?></span></span></label>

в CSS прописываем стили и всё работает.
Код
.button_checkbox  input[type="checkbox"] + span {
  background: #df4040;
  color: #fff;
  text-shadow: none;
  padding: 8px 20px;
  font-size: 88%;
  display: inline-block;
  vertical-align: top;
  border: none;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}


.button_checkbox  input[type="checkbox"]:checked + span {
  background: #515151;
  color: #fff;
  text-shadow: none;
  padding: 8px 20px;
  font-size: 88%;
  display: inline-block;
  vertical-align: top;
  border: none;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как вывести характеристики в модуле последние товары?

Автор TommyDBrown

Ответов: 1
Просмотров: 149
Последний ответ 11.05.2017, 14:43:02
от dmitry_stas
Как вывести кнопку купить в модуле?

Автор viy

Ответов: 2
Просмотров: 234
Последний ответ 24.10.2016, 23:16:03
от nevigen
Настройка вывода товаров из под категорий в модуле

Автор Dimon777

Ответов: 0
Просмотров: 583
Последний ответ 28.03.2015, 10:38:29
от Dimon777
Как сделать в модуле (слайдере-товаров) вывод товаров из подкатегорий?

Автор Dimon777

Ответов: 0
Просмотров: 379
Последний ответ 28.03.2015, 10:28:16
от Dimon777
mod_jshopping_filters количество товара по каждой характеристике

Автор anddm2001

Ответов: 11
Просмотров: 721
Последний ответ 03.02.2015, 12:40:35
от anddm2001