ajax - Wicket 禁用 ComponentListener 禁用整个页面

标签 ajax components wicket javascript

我在我的 wicket 应用程序中使用 ajax 按钮,并且此代码工作正常:

@Override
protected void updateAjaxAttributes(AjaxRequestAttributes attributes) {
    super.updateAjaxAttributes(attributes);
    attributes.getAjaxCallListeners().add(new DisableComponentListener(form));
}

form 是一个带有 markup:id="form"的组件。

但我想禁用呈现的整个 WebPage 对象,并按照描述呈现指示器 here 。在 DisableComponentListener 中用 getPage() 替换表单参数似乎不起作用。

最佳答案

正如我在您链接到的页面上看到的,“禁用”表单的 JavaScript 代码使用传递的组件的元素 id(= 标记 id)在客户端禁用它。

问题是页面没有标记 ID。因此,您可以尝试编辑您的 javascript 代码以使用 body 元素,或者在层次结构的较高位置添加自定义 WebMarkupContainer 并将其传递给您的 DisableComponentListener。

关于ajax - Wicket 禁用 ComponentListener 禁用整个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24058178/

相关文章:

javascript - 当页面包含 iframe 时,Wicket 无法重新加载页面 onSubmit

javascript - Rails 4 在尝试使用 AJAX 时将 JS 加载为纯文本

jquery - Ajax 淡入 MySQL 的新结果

java - 如何将 onclick 选择添加到 wicket TreeTable 的行?

javascript - 使用 Material UI 进行 React 钩子(Hook)

svn - Mercurial 如何处理组件或模块化开发?

javascript - 如何处理未定义主体的响应?

delphi - Delphi 2010/Delphi XE 的免费软件 ZIP 组件?

javascript - 使用 AJAX 刷新的 Wicket 组件 "wicket:head"部分

java - 用于 Java Web 应用程序的可嵌入消息传递组件