我试图弄清楚如何与Alfresco Share进行一些仪表板间通信。
这里是一个简单的用例:

我们确实有2个破折号,我们称它们为A和B。我希望能够在A中填写字段“名称”(例如,值为“Toto”),然后单击“提交”按钮。单击A中的提交按钮后,应使用“Good Toto Toto”之类的问候语来更新B。

谢谢您的回答。

感谢您的回答。您能否详细说明一下“将dashlet_b.get.html.ftl发布到dashlet_a.post.html.ftl”?

在dashlet_b.get.html.ftl中,我猜是这样的:

<form id="..." action="" method="POST">
     <input  id="name" type="text" name="name" value=""/>
     <input type="submit" id="send" value="Send" /></form>

提交表单时,它会寻找dashlet_b.post.js对吗?您实际上如何告诉将表格发送到dashlet_a.post.js?

最佳答案

要创建这些动态dashlet,仅使用服务器端dashlet Web脚本是不够的。您需要浏览器中的javascript逻辑来通知其他dashlet更改。这是Alfresco通常这样做的方式:

浏览器Javascript仪表板A:

YAHOO.Bubbling.fire("interDashletMessage",
{
    message: "Hello World."
});

浏览器Javascript仪表板B:
YAHOO.Bubbling.on("interDashletMessage", function(layer, args) {
    var message = args[1].message;
    alert(message); // or write it to the dashlets HTML content
});

这将使用称为“interDashletMessage”的自定义事件将消息从dashlet A发送到dashletB。

如果您的仪表板B仅显示一些消息,则足以使用事件发送数据。如果更复杂,则小号A需要先将其数据发布到存储库中,然后触发“刷新”事件并使小号B从存储库中刷新其内容。这将涉及您可能需要编写的多个Web脚本。

关于share - Alfresco Share是否为Inter Dashlet通信提供任何机制?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7824728/

10-13 09:23