Как включить ввод форм в скрытом лайтбоксе div?

Используя jQuery 1.8 и плагин prettyPhoto, встроенный контент для лайтбокса становится скрытым div, который загружается при нажатии на указанную ссылку:

<a href="#private" rel="prettyPhoto[inline]">Select Groups</a>

    <div id="private" style="display:none;">
            <?php
            $db = JFactory::getDbo();
            $query = $db->getQuery(true);
            $db->setQuery("SELECT * FROM #__community_groups_members AS a
      INNER Join #__community_groups AS b
      ON b.id = a.groupid
      WHERE a.memberid = $user_id
      AND a.approved = 1");
            $groups = $db->loadObjectList();
            foreach($groups as $groupData){
                echo "<input type=\"checkbox\" id=\"chk\" name=\"groups[]\" value=\"".$groupData->id."\" />".$groupData->name."<br />";
            }
            ?>
        </p>
    </div>

Когда этот лайтбокс закрыт, флажки сняты, поэтому ввод не возвращается через главную страницу / форму. Я попытался использовать jQuery для включения входных данных, думая, что это может помочь, но все же значения не передаются в массив post. Вот функция, которую я решил исправить, но не дал никакого эффекта:

<script type="text/javascript" charset="utf-8">
jQuery(document).ready(function(){
    jQuery("#chk").prop("disabled", false);
});
</script>

Примечание. Эта функция находится внизу страницы.

Как мне использовать те входные данные, которые находятся в скрытом блоке div?

1 ответ

Добавьте дополнительный javascript для обработки пользовательских событий, когда видимы входы на основе лайтбокса.

Например, добавьте скрытое поле в форму, которая будет отправлена. Когда лайтбокс открыт, запишите действия пользователя, чтобы обновить значение (я) скрытого поля. Затем, когда форма отправлена, она отправит данные из поля.

Другие вопросы по тегам