我在按钮后面有SSJS代码。当我单击代码在另一个数据库中创建文档的按钮时。
当我点击按钮它工作正常,但我看着Domino Admin COnsole我意识到按钮背后的代码工作两次..我认为当页面刷新它再次工作?我怎么能阻止它? 我错过了什么?
<xp:button value="Label" id="button1">
<xp:eventHandler event="onclick" submit="true"
refreshMode="complete">
<xp:this.action><![CDATA[#{javascript:print("Before createNewDoc()");
createNewDoc();
print("After createNewDoc()");
}]]></xp:this.action>
</xp:eventHandler></xp:button>
答案 0 :(得分:1)
将打印语句添加到beforePageLoad
,afterPageLoad
等事件以确认它的运行位置。此外,值得使用XPages OpenLog Logger或其他一些可以输出完整堆栈跟踪的日志框架。这可能会识别代码是否在刷新时运行两次,以及来自。
没有理由代码应该从按钮运行两次。我假设这是一个脚本库中的SSJS函数,也许还有其他东西在触发它。