Wicket - 动态文本的锚标记

时间:2015-04-07 05:48:45

标签: java wicket wicket-6

我想知道是否可以为动态文本添加可点击链接。

我已经尝试过使用带有一些wicket id的锚标签并为其添加onclick行为,我可以在屏幕上看到带有链接的文本,但是从未触发链接的onclick调用。 可能是什么问题?

我做了类似的事情:

String someTextMessage = "Hey!!! <a wicket:id='printLink'>Click Here</a> now.";
Lable message = new Lable("messageLable", someTextMessage);
message.setEscapeModelStrings(true);
Link printLink = new Link("printLink") {
    @Override
    public void onClick() {
       System.out.println("inside onClick");
    }
};
this.add(printLink);
this.add(message);

我使用了这个wicket id并将其添加到页面并附加了onclick行为。 我已经检查了firebug控制台,但是没有为链接点击进行onclick调用。

感谢。

1 个答案:

答案 0 :(得分:0)

您想使用Link.setAnchor(Component)方法。 不要忘记将要跳转到的组件的setOutputMarkupId设置为true。

Label message = new Label("messageLable", "Anchor!");
message.setOutputMarkupId(true);
this.add(message);

Link printLink = new Link("printLink") {
    @Override
    public void onClick() {
        System.out.println("inside onClick");
    }
};
printLink.setAnchor(message);
this.add(printLink);

请不要尝试添加wicket组件,方法是使用&#34; wicket:id&#34;在某种组件中。它不会工作。