在 Plone 中通过 Javascript 触发叠加

发布于 2024-11-03 19:58:46 字数 361 浏览 3 评论 0原文

我这样定义了我的覆盖层

    $j('#heise').prepOverlay(
    {   
        subtype: 'ajax',
        noform: function(el) {return noformerrorshow(el, 'close');}
    }

(工作得很好)。

现在我需要手动触发叠加。

用户在表单中输入一些数据,提交表单后,结果应显示在溢出内。使用表单参数修改“href”值没有问题,但我不知道如何通过 JavaScript 手动触发叠加层的出现。我找到了jqueryTools的低级overlay() API方法,但它在这里没有帮助。有什么想法吗?

I defined my overlay for like that

    $j('#heise').prepOverlay(
    {   
        subtype: 'ajax',
        noform: function(el) {return noformerrorshow(el, 'close');}
    }

(which is working perfectly fine).

Now I need to trigger the overlay manually.

The user enters some data into so form and upon form submission the result should be displayed inside the overflow. Modifying the 'href' value with the form parameters is no problem however I don't know how to trigger the appearance of the overlay manually through Javascript. I found the low-level overlay() API method of jqueryTools but it's not helpful here. Any idea?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

清醇 2024-11-10 19:58:46

打开 jQueryTools 覆盖层的正常方法是通过 上的 .load()覆盖 API,但 .prepOverlay 将所有内容隐藏在它自己的包装器中,以用于 ajax 样式覆盖。您可以执行以下两种操作之一:

  1. 调用点击处理程序:

    jQuery('#heise').click();
    

    这将为所有点击事件触发正确的处理程序。

  2. 直接调用 pb.ajax_click 处理程序,将 this 绑定到您的元素:

    pb.ajax_click.apply(jQuery('#heise'));
    

    这只会触发 ajax 点击处理程序。

The normal way to open a jQueryTools overlay is through .load() on the overlay API, but .prepOverlay hides all that in it's own wrapper in place for ajax style overlays. You can do one of two things:

  1. Call the click handler:

    jQuery('#heise').click();
    

    This will trigger the correct handlers for all click events.

  2. Call the pb.ajax_click handler directly, binding this to your element:

    pb.ajax_click.apply(jQuery('#heise'));
    

    This only will trigger the ajax click handler.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文