如果用户按下“确定”或“取消”按钮,我有一个很好用的对话框。但是,如果他们按Escape键或单击X关闭对话框,我需要运行一些代码。我已经尝试将代码放在onHide和onClose以及onUnload事件中无济于事。
有没有人对此有任何想法?
//部分代码列表。 。 。
<xe:dialog id="dialogUserCreds"
title="#{javascript:viewScope.dialogUserCredsTitle;}">
<xe:this.onHide><![CDATA[
var url = "/xpVendorApplication.xsp";
context.redirectToPage(url);]]>
</xe:this.onHide>
<xe:this.onClose><![CDATA[
var url = "/xpVendorApplication.xsp";
context.redirectToPage(url);]]>
</xe:this.onClose>
</xe:dialog>
答案 0 :(得分:2)
正如您在评论中提到的,您已经找到了onHide()的CSJS事件。这只接受客户端javascript,但您的部分代码列表显示您正在尝试使用服务器端javascript。
在这种情况下,您需要使用window.location(url)调用来执行CSJS重定向。