当我使用 Ajax 链接 URL 将一个页面 (A) 转到另一个页面 (B) 时,显示如下 ...?wicket:interface=:58::::#
在 B 页面上,我有一个打开模型窗口的链接。当我们直接单击模型窗口的链接时,它工作正常,但是当第一次通过右键单击在新选项卡中打开链接然后单击模型窗口链接时,它会抛出错误。
我正在使用 setResponsePage(new B(variable)) 来访问另一个页面。当我使用 setResponsePage(B.class) 而不是 setResponsePage(new B(variable)) 时,它工作正常。
注意:我不想将 pageparameter 与可书签和 setResponsePage 一起使用。
错误是:
org.apache.wicket.WicketRuntimeException: 组件 listForm:group:issueList:1:在页面 com.B[id = 18] 上找不到 editStatus,侦听器接口 = [RequestListenerInterface name=IBehaviorListener,method=public abstract void org.apache.wicket .behavior.IBehaviorListener.onRequest()] org.apache.wicket.protocol.http.request.InvalidUrlException: org.apache.wicket.WicketRuntimeException: 组件 listForm:group:issueList:1:editStatus 在页面 com.B [id = 18],侦听器接口 = [RequestListenerInterface name=IBehaviorListener, method=public abstract void org.apache.wicket.behavior.IBehaviorListener.onRequest()] at .... ............ 27 更多
“editStatus”是模型窗口上的链接名称。
我正在使用 A 类的代码
class A extends WebPage {
Link<String> escalated = new Link<String>("escalated") {
public void onClick() {
setResponsePage(new B(Variables));
} };
}
class B extends WebPage {
public B(variables..) {
}
final ModalWindow model = new ModalWindow("UpdateModel");
model.setContent(new C(model,variables,model.getContentId()));
item.add(new AjaxLink<Void>(**"editStatus"**) {
public void onClick(AjaxRequestTarget target) {
model.show(target);
}
}.add(new Image("edit_icon", "image/edit.png")));
}
}
class C extends Panel {
public C(.....) {
}
}