【问题标题】:How to enable form inputs in a hidden div lightbox?如何在隐藏的 div 灯箱中启用表单输入?
【发布时间】:2014-08-21 13:45:36
【问题描述】:

使用 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 灯箱中的那些输入?

【问题讨论】:

    标签: jquery hidden-field prettyphoto


    【解决方案1】:

    添加额外的 javascript 以在基于灯箱的输入可见时处理用户事件。

    例如,在将要提交的表单中添加一个隐藏字段。当灯箱打开时,捕获用户操作以更新隐藏字段的值。那么当表单提交时,它会从字段中提交数据。

    【讨论】:

    • 谢谢@mspaly。我可以做到这一点,但无法在灯箱内做到这一点。就好像主窗体和灯箱中的输入之间有一堵看不见的墙。
    猜你喜欢
    • 2019-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-15
    • 2021-03-15
    • 1970-01-01
    相关资源
    最近更新 更多