如何解决如何在ZK中添加Java方法计时器以进行重定向
| 大家好,我在设置ZK上的Timer方法时遇到问题,默认情况下,我的.zul页面中的方法是:<timer id=\"timer\" delay=\"1000\" repeats=\"false\"
onTimer=\"response.sendRedirect(\'./Login.zul\')\" />
但是代码是错误的(我想是因为(\'./ Login.zul \'),如果我尝试(\\\“ ./ Login.zul \\\”),仍然显示错误),我尝试构建我的控制器页面是这样的:
private Timer timer=new Timer( 1000 );
public OTPController() {
timer.setRepeats( true );
timer.setAttribute( \"onTimer\",\"response.sendRedirect(\\\"./Login.zul\\\")\",Timer.COMPONENT_SCOPE );
timer.start();
}
但什么都没有发生.. :(
有人可以帮助我吗?
也许我必须创建Java脚本方法或类似的方法?
我仍然在寻找答案,我已经阅读了《 ZK文档》,但是没有任何帮助。
感谢您的关注,对不起我的英语不好:D
解决方法
您可以尝试以下示例,
<timer id=\"timer\" delay=\"1000\" repeats=\"false\"
onTimer=\'Executions.sendRedirect(\"./Login.zul\")\' />
, onTimer
是事件,不是属性[1]。您应该在Timer组件上使用addEventListener()[2]添加执行实际sendRedirect的方法。例如。在您的OTPController中,您可以执行
<!-- language: lang-js -->
timer.addEventListener(Events.ON_TIMER,new EventListener() {
public void onEvent(Event evt) {
Executions.sendRedirect(\"./Login.zul\"); //refer [3]
}
});
[1] http://books.zkoss.org/wiki/ZK_Component_Reference/Essential_Components/Timer#Supported_Events
[2] http://books.zkoss.org/wiki/ZK_Developer\'s_Reference/Event_Handling/Event_Listening#Event_Listener
[3] http://books.zkoss.org/wiki/ZK_Developer\'s_Reference/UI_Patterns/Forward_and_Redirect#Redirect_to_Another_URL
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。