Orbeon表单 - 如何更改Orbeon Action的默认行为

时间:2015-10-27 15:15:06

标签: javascript forms orbeon hybris

目前在 Orbeon Forms 中,当您定义 Orbeon Action 时(例如)会对表单上正在更改的值作出反应,您可以指定 >服务在提供一些输入参数时执行该Action操作。此外,您可以指定要对服务响应执行的操作以及您希望如何使用收到的数据,例如也许填补其他形式的领域。

我有一种情况,Orbeon表单被用作Hybris Commerce Suite的一部分,我需要在一些字段更改后触发Service调用,然后在服务器端执行逻辑并重新加载原始页面(表单所在的位置)。由于 Orbeon Builder 并没有为我提供这些功能,您能否给我一些提示/输入,告诉我如何实现这一目标?

换句话说,我可以覆盖默认的Orbeon Builder功能,让我在从服务器收到响应时重新加载页面吗?如果我使用JS / JQuery的常规HTML表单,这不是一个问题,我只是不确定Orbeon如何处理这个问题。

提前致谢

1 个答案:

答案 0 :(得分:0)

假设您正在使用表单构建器servicesactions,请在服务运行后插入您自己的JavaScript,在表单构建器中edit the source of the form,然后添加以下内容</xf:model>

<xxf:script observer="my-service-submission"
    ev:event="xforms-submit-done">alert('gaga');</xxf:script>.

observer属性中,将my-service替换为您为服务指定的名称(保留-submission后缀)。当然,请将alert('gaga')替换为您想要运行的实际JavaScript代码。