我正在努力学习Wicket。我遇到的一个问题是改变标签等组件的值。
这是我宣布标签的方式:
Label message = new Label("message", new Model<String>(""));
message .setOutputMarkupId(true);
add(message );
我能找到的唯一解决方案:
Label newMessage= new Label(message.getId(), "MESSAGE");
newMessage.setOutputMarkupId(true);
message.replaceWith(newMessage);
target.add(newMessage);
是否有更好/更简单的方法来编辑Wicket标签的值并向用户显示这个新值?
谢谢!
答案 0 :(得分:20)
我认为你不明白什么是模特。您的示例可以重写如下
Model<String> strMdl = Model.of("My old message");
Label msg = new Label("label", strMdl);
msg.setOutputMarkupId(true);
add(msg);
在你的ajax活动中
strMdl.setObject("My new message");
target.add(msg);