从Orbeon 2018.1开始,ORBEON javascript对象的加载方式发生了一些事情。下面的内容用于2017.2.2和3.9版本。
目标:我想使用适当的语言加载TinyMCE小部件。为此,我以前有这样的代码:
<xh:script type="text/javascript">
var lang = ORBEON.xforms.Document.getValue('language') ? ORBEON.xforms.Document.getValue('language').split('-')[0] : 'en';
var TINYMCE_CUSTOM_CONFIG = {
language: lang,
...此html/head代码在版本2018.1中失败,因为ORBEON对象“未定义”。
我尝试将变量lang移动到我的模型中,如下所示:
<xf:instance id="language">
<language/>
</xf:instance>
<xf:action ev:observer="language" ev:event="xxforms-value-changed">
<xxf:script>
var lang = ORBEON.xforms.Document.getValue('language') ? ORBEON.xforms.Document.getValue('language').split('-')[0] : 'en';
TINYMCE_CUSTOM_CONFIG.language = lang;
</xxf:script>
</xf:action>但是现在代码失败了,因为它写着"java.lang.IllegalArgumentException:无法找到id language的控件“
我在这里错过了什么?
https://stackoverflow.com/questions/52261626
复制相似问题