向jsonjava对象添加函数并从xpages控件调用它

时间:2016-04-07 08:05:43

标签: java json xpages xpages-ssjs

我正在尝试向JSONJavaObject添加一个函数,并从xpage上的控件调用它。

到目前为止,我有:

<xp:button value="Label" id="button1">
<xp:eventHandler event="onclick" submit="false">
<xp:this.script><![CDATA[obj.onClick]]></xp:this.script>
</xp:eventHandler>
</xp:button>

在第一行中,我在Notes视图中的列中添加键值对。 在第二行中,我将函数定义为字符串。 在最后一行中,我将转换后的字符串作为函数放在jsonjava对象中。

我在以下博文中读到过这个: http://camerongregor.com/2016/01/19/doublequoteavoidance/

在下一步中,我将函数绑定到例如按钮控件如下:

y = [0.1 0.3 10.0 1.0 0.5 0.1 24.0 0.6 0.1 0.2]
x = (1:length(y))
plot(x,y);

hold on;

peaks = [3 7];
plot(x(peaks), y(peaks), 'v', 'MarkerSize', 24);

print('-dpng', 'example.png', '-S640,480');

obj是SSJS中JSONJava对象的代表。

但没有成功。有人知道如何在对象中调用函数吗?

1 个答案:

答案 0 :(得分:0)

obj.onClick是否已经为您提供了Java类返回的函数的句柄?如果是,那么您应该可以使用JavaScript中提供的callapply方法来调用它:

obj.onClick.call();
obj.onClick.apply();

有关这两种方法的更多详细信息,请访问:What is the difference between call and apply?