2012-06-19 2 views
0

Мне нужно загрузить контент за определенный месяц, определенный пользователем. Если пользователь выбирает месяц июля, в течение месяца отображается список событий (содержимое в этом случае). Если пользователь выбирает июнь, отображаются все июньские события. Прямо сейчас у меня есть сценарий, установленный там, где пользователь нажимает «следующую» ссылку для переключения месяцев. Показывается только месяц. Когда пользователь нажимает на ссылку «next», я бы хотел, чтобы все загружаемые материалы в течение следующих месяцев. Например, если пользователь находится в июне месяце, и они нажмут дальше, чем июль, будут отображаться, а также все июльские события. Для загрузки новых событий я использую:Загрузить содержимое в div на основе месяца

window.location = "/<?php echo $site_slug; ?>/ministries/events/<?php echo $_GET['year']; ?>/<?php echo $_GET['month']; ?>; 

Это называется, когда пользователь нажимает кнопку «Далее». Переменные $ _GET ['year'] и $ _GET ['month'} заполняются API. Когда я нажимаю следующую кнопку, я не получаю значения «год» и «месяц», а только хэштег. Мой вопрос в том, правилен ли синтаксис javascript?

EDIT: Добавлено больше кода:

Jquery:

<script type="text/javascript"> 
     $('document').ready(function(){ 
      $(".event_months li:nth-child(3)").addClass("doShow"); 

      $("a.next").click(function() { 
       $('.first').toggleClass("first"); 
       var $toHighlight = $('.doShow').next().length > 0 ? $('.doShow').next() : $('.event_months li').first(); 
       $('.doShow').removeClass('doShow'); 
       $toHighlight.addClass('doShow'); 
       window.location = "/<?php echo $site_slug; ?>/ministries/events/<?php echo $_GET['year']; ?>/<?php echo $_GET['month']; ?>; 

      }); 

      }); 
    </script> 

Не уверен, что если вызов API поможет, но вот это:

<?php getContent(
    "event", 
    "display:list", 
    "order:recent", 
    "find_group:".$site_slug, 
    "groupby:month", 
    "year:".$_GET['year'], 
    "month:".$_GET['month'], 
    "group_show:<li class='noShow'>__slug__</li>" 
    ); 
?> 
+0

Что это за хвост '+' делает? Опечатка? –

+0

Да, опечатка. Это исправлено, спасибо. – user715564

+0

Код выглядит так, как будто все в порядке, вопрос в том, что вы отправляете в переменные, покажите немного больше своего кода, на который он должен ответить, – thegrede

ответ

1

Я настроить ваш код, как вы делали (Я должен был догадаться о «следующей» ссылке) и не мог заставить его работать. Проблема, из того, что я могу сказать, заключается в том, что вы используете $_GET для получения переменных года и месяца из URL-адреса. Используйте $_REQUEST, вместо:

<a class="next" href="/?year=2012&month=06" onclick="return false;">Next</a> 

Вам также необходимо «возвращение ложным», чтобы остановить ссылку из следующего, если вы хотите использовать window.location линию.

Не забудьте (как вы уже упоминали), чтобы убедиться, что у вашего окна.location есть закрывающая скобка.