Orbeon 版本:Orbeon Forms 3.8.0.201005270113
我在 Javascript 文件中有以下代码。此代码已执行,但似乎未找到 XBL 中的模型。
ORBEON.xforms.Document.dispatchEvent("model-name", "event-name");
这是 XBL 中的模型。XBL 中有几个模型。我没有看到任何消息,所以好像没有找到该模型。我在日志中看不到任何错误。
<xforms:model id="model-name" xxforms:external-events="event-name">
<xforms:action ev:event="event-name">
<xforms:message>Test</xforms:message>
</xforms:action>
</xforms:model>
有谁知道从 Javascript 到 XBL 的调度是否有一些技巧?
非常感谢!
更新:
可能是问题的另一件事(也许?)是使用 instance(this) 从 XBL 调用 javascript 不起作用。我想知道该类的实例是否未绑定到组件实例,因此找不到模型?
这是从不调用 init 方法的 xbl 对 javascript 的调用:
<xxforms:script>YAHOO.xbl.fr.myTest.instance(this).init();</xxforms:script>
这是调用init() 方法的调用:
<xxforms:script>YAHOO.xbl.fr.myTest.prototype.init();</xxforms:script>
这是javascript:
YAHOO.namespace("xbl.fr");
YAHOO.xbl.fr.myTest = function() {};
ORBEON.xforms.XBL.declareClass(YAHOO.xbl.fr.myTest, "xbl-fr-myTest");
YAHOO.xbl.fr.myTest.prototype = {
},
init: function() {
alert('test');
},
valueChanged: function() {
},
};