【发布时间】:2016-12-23 05:18:35
【问题描述】:
我遇到了一些奇怪的问题。页面加载后第一次单击页面按钮时不执行 SSJS。但是当您再次单击它时确实有效。我发现它尤其是在您清除浏览器缓存时。
- 尝试清除 Chrome 缓存(Ctrl+Shift+Del。清除所有内容)。
- 重新启动 Chrome。
- 尝试加载此页面 TEST.xsp。第一次通过服务器登录页面。
- 单击“我的按钮”。它什么也没做。它应该是例如使用新参数重定向到同一页面,例如param1=true(确保它什么都不做,只需将 param1=true 添加到 URL)
- 再次单击它。它确实有效
什么可能导致这种行为?它可以是任何不完全是 context.redirectToPage 的 SSJS。但它仅在您第二次单击按钮时才有效。在 FF 上发现了同样的问题,但在 IE 中确实有效。
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core">
<xp:button id="button1" styleClass="btn btn-primary btn-sm"
value="My Button" title="My Button">
<span class="glyphicon glyphicon-edit"></span>
<xp:eventHandler event="onclick" submit="true"
refreshMode="complete" id="eventHandler10">
<xp:this.action><![CDATA[#{javascript:context.redirectToPage("TEST.xsp?param1=true");}]]></xp:this.action>
</xp:eventHandler>
</xp:button>
</xp:view>
【问题讨论】:
-
这就是你真正想要的吗?你失去了上下文。为什么不直接切换到编辑模式?
-
no.. 这只是一个示例,因此您可以很容易地看到它不起作用。任何其他代码都不起作用
-
我对您的示例 XPage 没有任何问题。它在第一次单击按钮时重定向
标签: javascript xpages