Выпадающее меню из наборов 2.X

pills-menu

 
Посетитель
small user social cms
Медаль
Сообщений: 106
Доброго времени суток друзья!
Имеем код:
Код PHP:
  1.  
  2. <ul class="pills-menu">
  3. <?php $ds_counter = 0; ?>
  4. <?php foreach($datasets as $set){ ?>
  5. <?php $ds_selected = ($dataset_name == $set['name'] || (!$dataset_name && $ds_counter==0)); ?>
  6. <li class="<?php if ($ds_selected){ ?>active <?php } ?><?php echo $set['name'].(!empty($set['target_controller']) ? '_'.$set['target_controller'] : ''); ?>">
  7.  
  8. <?php $ds_url = sprintf($base_ds_url, ($ds_counter > 0 ? $ds_prefix.$set['name'] : '')); ?>
  9.  
  10. <?php if ($ds_selected){ ?>
  11. <div><?php echo $set['title']; ?></div>
  12. <?php } else { ?>
  13. <a href="<?php echo $ds_url; ?>"><?php echo $set['title']; ?></a>
  14. <?php } ?>
  15.  
  16. </li>
  17. <?php $ds_counter++; ?>
  18. <?php } ?>
  19. </ul>
  20.  
Хочу сделать выпадающим через select, получаю:
Код PHP:
  1.  
  2. <select class="pills-menu">
  3. <?php $ds_counter = 0; ?>
  4. <?php foreach($datasets as $set){ ?>
  5. <?php $ds_selected = ($dataset_name == $set['name'] || (!$dataset_name && $ds_counter==0)); ?>
  6. <option value="<?php if ($ds_selected){ ?>active <?php } ?><?php echo $set['name'].(!empty($set['target_controller']) ? '_'.$set['target_controller'] : ''); ?>"selected>
  7.  
  8. <?php $ds_url = sprintf($base_ds_url, ($ds_counter > 0 ? $ds_prefix.$set['name'] : '')); ?>
  9.  
  10. <?php if ($ds_selected){ ?>
  11. <div><?php echo $set['title']; ?></div>
  12. <?php } else { ?>
  13. <a href="<?php echo $ds_url; ?>"><?php echo $set['title']; ?></a>
  14. <?php } ?>
  15.  
  16. </option>
  17. <?php $ds_counter++; ?>
  18. <?php } ?>
  19. </select>
  20.  
В итоге при выборе параметра из наборов ничего не происходит.
Я может фигней занимаюсь или эта идея способна на существование? :)
Редактировалось: 1 раз (Последний: 25 октября 2018 в 21:37)
Посетитель
small user social cms
Медаль
Сообщений: 279
Код PHP:
  1. <?php if(!isset($ds_prefix)){ $ds_prefix = '/'; } ?>
  2. <div class="content_datasets">
  3. <select onchange="if (this.value) window.location.href=this.value" class="pills-menu">
  4. <?php $ds_counter = 0; ?>
  5. <?php foreach($datasets as $set){ ?>
  6. <?php $ds_selected = ($dataset_name == $set['name'] || (!$dataset_name && $ds_counter==0)); ?>
  7. <li class="<?php if ($ds_selected){ ?>active <?php } ?><?php echo $set['name'].(!empty($set['target_controller']) ? '_'.$set['target_controller'] : ''); ?>">
  8.  
  9. <?php $ds_url = sprintf($base_ds_url, ($ds_counter > 0 ? $ds_prefix.$set['name'] : '')); ?>
  10.  
  11. <?php if ($ds_selected){ ?>
  12. <option value="<?php echo $ds_url; ?>"><?php echo $set['title']; ?></option>
  13. <?php } else { ?>
  14. <option value="<?php echo $ds_url; ?>"><?php echo $set['title']; ?></option>
  15. <?php } ?>
  16.  
  17. </li>
  18. <?php $ds_counter++; ?>
  19. <?php } ?>
  20. </select>
  21. </div>
  22. <?php if (!empty($current_dataset['description'])){ ?>
  23. <div class="content_datasets_description">
  24. <?php echo $current_dataset['description']; ?>
  25. </div>
  26. <?php } ?>
Реклама
cms
Посетитель
small user social cms
МедальПочетный донор проектаКубок зрительских симпатийАвторитет форумаПочетный донор проекта
Сообщений: 2792
на сайте
DrDooM, попробуйте так:
Код PHP:
  1.  
  2. <select onchange="top.location=this.value">
  3. <?php $ds_counter = 0; ?>
  4. <?php foreach($datasets as $set){ ?>
  5. <?php $ds_selected = ($dataset_name == $set['name'] || (!$dataset_name && $ds_counter==0)); ?>
  6. <?php $ds_url = sprintf($base_ds_url, ($ds_counter > 0 ? $ds_prefix.$set['name'] : '')); ?>
  7. <?php if ($ds_selected){ ?>
  8. <option value="" selected="selected">
  9. <?php echo $set['title']; ?>
  10. </option>
  11. <?php } else { ?>
  12. <option value="<?php echo $ds_url; ?>">
  13. <?php echo $set['title']; ?>
  14. </option>
  15. <?php } ?>
  16. <?php $ds_counter++; ?>
  17. <?php } ?>
  18. </select>
  19.  
Украинский для инстант
Посетитель
small user social cms
Медаль
Сообщений: 106
Благодарю господа, оба варианта рабочие smile теперь даже не знаю какой выбрать :)
Посетитель
small user social cms
Медаль
Сообщений: 106
Проблема решена
В начало страницы
Предыдущая темаСледующая тема Перейти на форум: