Modal opens all post IDs

时间:2018-08-06 作者:Remco

这是我的模式代码。第一个代码显示每个职位ID的图像、职务和名称。

当用户单击“更多信息”链接时,应该会打开一个按钮,其中包含有关帖子的更多信息,但它会打开所有帖子模态。有没有什么方法可以让我只打开与modal相同的post ID?

<div><?php echo wp_get_attachment_image($image_upload,$size = \'full\');?><br/>
    <span class="name"><?php echo $title; ?></span><span class="jobtitle"><?php echo $jobtitle; ?></span>
    <a onclick="return moreinfoModal(this);" id="<?php echo get_the_ID();?>" data-toggle="modal" data-target="#moreinfo-modal-<?php echo get_the_ID();?>" href="javascript:void(0);" class="info">more info</a>
  </div>


  <div id="moreinfo-modal-<?php echo get_the_ID();?>" class="moreinfo-modal" role="dialog">
        <div class="teammember_div">
          <a id="close-moreinfo" onclick=\'return closeMoreInfoModal();\' href="javascript:void(0);"><img src="https://brentbrookbush.com/wp-content/themes/brent/images/svgs/icon.svg"></a>
          <?php echo wp_get_attachment_image($image_upload,$size = \'full\');?>
          <p><?php echo $title ?></p>
          <p><?php echo $about ?></p>
          <span class="jobtitle"><?php echo $jobtitle ?></span>

          <span id="moreinfo" style="display: inherit;"></span>
          <a id="modal-join" class="btn-cta" href="/sign-up/">Become a Member!</a>
        </div>
      </div>

  <?php }?>  
抱歉,添加了以下脚本

<script> function moreinfoModal(field) {
    console.log(field.id);
    $(\'.moreinfo-modal\').toggleClass(\'open\');
}


function closeMoreInfoModal() {
    $(\'.moreinfo-modal\').toggleClass(\'open\');
}

$(document).on(\'click\', \'.close-pill\', function(e) {
    $(this).parent().remove();
    e.preventDefault();
});
</script>

1 个回复
最合适的回答,由SO网友:ngearing 整理而成

因此,您的脚本正按照您的指示执行。

在这里,您将元素传递给函数,但从未使用它,而是使用一个类查询所有元素并添加另一个类。

function moreinfoModal(field) {
    console.log(field.id);
    $(\'.moreinfo-modal\').toggleClass(\'open\');
}
您应该做的只是将类添加到buttin所针对的元素中:

function moreinfoModal(field) {
    // Get the button target.
    var target = field.getAttribute(\'data-target\')
    // Add class to target.
    $(target).addClass(\'open\');
}
以及何时需要关闭模型窗口。您可以只查找打开的模型。因为您没有传入元素以从中获取id。

function closeMoreInfoModal() {
    // Close all windows because you we dont have the open elements id.
    $(\'.moreinfo-modal.open\').removeClass(\'open\');
}

结束

相关推荐

重写子函数中的父主题配置。php

希望有人能提供帮助,我正在寻找一些关于如何重写/替换父主题中加载的某些函数并将其移动到子主题中的建议,以便我们可以在子主题中对文件本身进行更改。我们将把结构和文件“复制”到子主题中,但还无法找到方法“卸载”原始父主题文件,然后加载我们想要更改的子主题文件。本质上,我们将在子主题中复制和更改下面列出的所有“require”文件,但需要找到某种方法来覆盖父函数。php。我们已经尝试了多种方法来做到这一点,但到目前为止似乎还没有成功。这是当前的父函数。PHP:<?php /** * mo