我的应用程序中有一些按钮:
private class MyForm extends Form<Parametry> {
private static final long serialVersionUID = 1L;
public MyForm(final Parametry parametry) {
add(new AjaxButton("1") { .... }
add(new AjaxButton("2") { .... }
add(new Button("run") {
private static final long serialVersionUID = 1L;
@Override
public void onSubmit() {
logger.error("???????????????????" + parametry.getDatum());
}
});
}
}
在 Firefox 和 Chrome 中一切正常,但我在 IE8 上遇到问题。 Ajax 按钮工作正常,但是当我按下按钮时什么也没有发生。只是页面是新的 (?x
= ?x+1
),但 logger
不写入任何内容。
我该如何解决它?
<小时/>更新:我使用的是 1.5.7 版本。当我删除 ajaxButton 时,一切正常。
<小时/>更新2:我使用wireshark来查看通信:
火狐浏览器:
POST /rob-mon/statistika?5-4.IFormSubmitListener-statistikaForm HTTP/1.1
这应该不错。
IE9:
GET /rob-mon/statistika?4-1.IBehaviorListener.0-statistikaForm&random=0.2323892690702561 HTTP/1.1
为什么使用GET
方法?
最佳答案
作为替代方案,您不能覆盖onSubmit
吗?为您Form
而不是按钮?您甚至可以丢掉按钮并保留简单的 <input type="submit" />
不与 Wicket 绑定(bind),我认为这应该有效。
关于java - 为什么 IE9 在 wicket 形式中用 get 方法替换 post 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13063973/