How to open ModalDialog on PageLoad(如何在 PageLoad 上打开 ModalDialog)
问题描述
如何在 PageLoad() 的构造函数中打开一个模式对话框,在没有 AjaxRequestTarget 的情况下使用 Wicket?
How can I open a modal dialog on PageLoad(), in the constructor of the WebPage and without the AjaxRequestTarget, with Wicket?
推荐答案
如果没有 Ajax 请求,我找不到打开它的方法,但是完全可以在页面加载时打开它,只需一个简单的行为:
I couldn't find a way to open it without an Ajax request, but it's perfectly possible to open it when the page is loaded, with a simple behavior:
HomePage.java
HomePage.java
public class HomePage extends WebPage {
public HomePage(PageParameters pageParameters) {
super(pageParameters);
ModalWindow modal = new ModalWindow("modal");
modal.add(new OpenWindowOnLoadBehavior());
modal.setPageCreator(new ModalWindow.PageCreator() {
@Override
public Page createPage() {
return new RedirectPage("http://www.google.com");
}
});
add(modal);
}
}
OpenWindowOnLoadBehavior.java
OpenWindowOnLoadBehavior.java
public class OpenWindowOnLoadBehavior extends AbstractDefaultAjaxBehavior {
@Override
protected void respond(AjaxRequestTarget target) {
ModalWindow window = (ModalWindow) getComponent();
window.show(target);
}
@Override
public void renderHead(IHeaderResponse response) {
response.renderOnLoadJavascript(getCallbackScript().toString());
}
}
主页.html
<html xmlns:wicket="http://wicket.apache.org">
<body>
<div wicket:id="modal"></div>
</body>
</html>
这篇关于如何在 PageLoad 上打开 ModalDialog的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在 PageLoad 上打开 ModalDialog
基础教程推荐
- RabbitMQ:消息保持“未确认"; 2022-01-01
- 无法复制:“比较方法违反了它的一般约定!" 2022-01-01
- 问题http://apache.org/xml/features/xinclude测试日志4j 2 2022-01-01
- 修改 void 函数的输入参数,然后读取 2022-01-01
- 存储 20 位数字的数据类型 2022-01-01
- 如何对 Java Hashmap 中的值求和 2022-01-01
- Struts2 URL 无法访问 2022-01-01
- 使用堆栈算法进行括号/括号匹配 2022-01-01
- REST Web 服务返回 415 - 不支持的媒体类型 2022-01-01
- Spring AOP错误无法懒惰地为此建议构建thisJoinPoin 2022-09-13
