Drupal - 使用 AJAX 嵌入/更新视图页面

Posted

技术标签:

【中文标题】Drupal - 使用 AJAX 嵌入/更新视图页面【英文标题】:Drupal - embedding/updating View pages with AJAX 【发布时间】:2011-10-25 20:59:13 【问题描述】:

我一整天都在为这件事抓狂,似乎有一百种不同的方法可以完成我想要完成的事情,但我希望以某种方式完成——我找不到。

这是我的工作:http://schmidtbrotherscutlery.com/dev/mySchmidt/myCutlery/

我的设置是一个包含四个不同页面的视图,每个页面都按类别过滤。上面的默认页面一次列出了所有三个类别,菜单中的类别子链接将您带到按单个类别过滤的其他三个视图页面。我需要的是每个类别子链接用 AJAX 加载它们各自的视图页面,而不是像现在这样逐页刷新。我意识到我可以在类别上使用公开的过滤器来有效地实现相同的目的,但我希望这些特定的菜单子链接能够加载视图页面,而不是使用公开的表单单独过滤一个视图。这似乎真的没有那么困难,我不知道为什么我还没有弄清楚,但我对 Drupal+AJAX 集成没有太多经验。请帮忙!

【问题讨论】:

【参考方案1】:

从我读到的内容看来,您应该能够将每个视图放在一个 jQuery 选项卡容器中。比如:

<div id="tabs">
    <div class="tab">
    <?php views_embed_view('viewname', 'block_1')?>
    </div>
    <div class="tab">
    <?php views_embed_view('viewname', 'block_2')?>
    </div>
    <div class="tab">
    <?php views_embed_view('viewname', 'block_3')?>
    </div>
</div>

这将允许您在不刷新页面的情况下循环浏览每个内容。

【讨论】:

以上是关于Drupal - 使用 AJAX 嵌入/更新视图页面的主要内容,如果未能解决你的问题,请参考以下文章

Drupal Views Ajax 刷新行

Drupal Ajax Form Ajax Form 拉取两种不同的视图

使用ajax将drupal视图加载到右边距

Drupal 视图中使用 AJAX 的暴露过滤器出错

Drupal 7:嵌入视图选择主题

使用 nid 参数在 Drupal 视图中为每个节点加载 Ajax