【问题标题】:Drupal: Loading AJAX content in DrupalDrupal:在 Drupal 中加载 AJAX 内容
【发布时间】:2011-03-10 14:02:56
【问题描述】:

我最近被告知要使用面板通过 Drupal 将内容动态加载到不同的部分。但是,我刚刚意识到有一种简单的方法可以做到这一点,我已将此 jQuery 代码添加到所有菜单项:

$('.menu a').click(function(){
    $('#content').load($(this).attr('href') + " #content");
    return false; //to avoid refresh
});

通过这种方式,我可以轻松地从任何链接更新任何块,而无需使用面板。

这种方法好用吗? 您是否还认为 Panels 不需要简单地将 html 动态加载到网站部分?

谢谢

【问题讨论】:

    标签: php jquery drupal drupal-panels


    【解决方案1】:

    面板的主要用途,是在没有页面加载的情况下不加载内容。它主要用于

    • 根据特定标准创建不同的页面布局,您可以使用代码或在 AI 中进行设置。
    • 让页面的内容,了解正在查看哪些内容,并将不同的内容绑定在一起。

    您当前的脚本可以运行,但它的当前形式有点粗糙。 Fx,如果用户点击几次会发生什么。如果您想动态更新您的内容,您应该只更改需要更改的部分,而不是加载/更改整个页面。那么您不妨只加载新页面。我想这就是 Panels 可以帮助您的地方,但我还没有尝试过使用这样的 Panels。

    【讨论】:

    • 谢谢,所以这里的问题是:我怎样才能 only 加载节点内容而不是通常的页面?节点的链接是什么? (当然不必使用面板)谢谢
    • @Patrick:ATM,没有办法只加载节点的内容,但制作一个这样做的模块应该相当简单。让这更棘手的是,并非所有页面都是节点视图。
    • 我想我已经解决了。我将参数“onlyNode=true”与链接一起传递,并且我已经更新了我的模板,以便在此变量为真时忽略页面内容。这样选择是在服务器端完成的,我没有加载整个页面。
    • 是的,解决方案在这里:stackoverflow.com/questions/247991/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多