0

返回我的 FirstPage 后,我想将焦点设置到特定组件。

PageParameters pageParameters = new PageParameters();
setResponsePage(new SecondPage(pageParameters) {
            @Override
            public void doSelect(Integer ID) {                
                setResponsePage(FirstPage.this);
                // set focus to spesific component here

            }

            @Override
            public void doCancel() {
                setResponsePage(FirstPage.this);
            }
        });

请帮我..

4

2 回答 2

3

IMO 我可以为此选择 HTML5。在 HTML 中,所有表单字段都有一个autofocus属性。

您可以在页面加载时决定要关注哪个组件。在您的情况下,它是默认构造函数。如果您动态地关注组件,请制定一些标准并关注特定组件,否则请执行以下操作。不需要Javascript。

TextField textField = new TextField("name");
textField.add(new AttributeModifier("autofocus",""));
于 2017-05-31T06:05:09.793 回答
0

您必须在页面中添加一点 JavaScript,搜索 FocusOnLoadBehavior:

https://cwiki.apache.org/confluence/display/WICKET/Request+Focus+on+a+Specific+Form+Component

于 2017-05-30T05:56:23.087 回答