我需要在ModalWindow中添加一个行为,以便当用户在模态之外单击时,如果满足特定条件(在我的respond()方法中选中了服务器端),则该模态将被关闭。

我尝试根据此答案实施某些操作。问题是我无法将单击侦听器附加到模态窗口div,因为在显示模态之前,它不会添加到DOM(示例将keyup附加到文档本身。)

我想到了扩展ModalWindow并通过getShowJavascript()添加JS的想法,但是我没有任何办法将其连接到AbstractDefaultAjaxBehavior.respond()方法中进行测试。

有帮助吗?

解决方案

我通过不将行为添加到模态,而是通过ModalWindow.setContent()添加到模态的小部件来解决了这个问题。将我的窗口小部件添加到模式中后,DOM中便出现了mask div,然后我就可以成功附加点击处理程序了。

智慧: 通用标签

请注意,我有些模棱两可地取决于模态窗口的蒙版,该蒙版的类名为“ wicket-mask-dark”。如果您更改了ModalWindow使用的CSS设置,情况可能并非如此。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top