java - setVisible (true) 直到页面刷新才显示

标签 java wicket

我有我想要显示的字符串变量

final String wrongPw = "密码错误";

我的 AJAX 是按钮:

AjaxButton yesButton = new AjaxButton("yesButton", yesNoForm) {
        private static final long serialVersionUID = -3827487963204274386L;
        @Override
        protected void onSubmit(AjaxRequestTarget target, Form form) {
            if (target != null && password.equals(getPw())) {
                answer.setAnswer(true);
                modalWindow.close(target);
            }else if(target != null && !password.equals(getPw())){
                answer.setAnswer(false);
                wrongPW.setVisible(true);
            }
        }
    };

再往下:

wrongPW.setVisible(false);
add(wrongPW);

当我点击"is"按钮时,我必须刷新页面才能显示 wrongPW

这如何动态完成?

最佳答案

您必须像这样将要更新的组件添加到目标:

target.add(wrongPW);

请务必在要动态更改其可见性的组件初始化时设置标记占位符标记,否则 Wicket 将找不到它。

wrongPW.setOutputMarkupPlaceholderTag(true);

这里解释了其原因:https://stackoverflow.com/a/9671796/2795423

关于java - setVisible (true) 直到页面刷新才显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36160316/

相关文章:

java - 从 Firebase 存储中获取随机图像

java - 实时应用程序中的 session 管理

javascript - Wicket:通过 Javascript 更新文本字段

javascript - Wicket getCallbackURL 方法无法按预期工作

java - 将链接动态添加到 Wicket 中的字符串中

java - 无法使用 ColdFusion 验证 SAML 断言

java - 指针、链接、对象和引用计数

java - 代币兑换算法

javascript - 提交由 javascript 填充的表单导致 Wicket 中的空值

java - Wicket 中的测试表单响应