1

アプリケーションにいくつかのボタンがあります:

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 を削除すると、すべてが機能します。


UPDATE2:通信を確認するために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メソッドを使用するのですか?

4

2 に答える 2

1

別の方法として、ボタンの代わりにonSubmit自分のものをオーバーライドできませんか? ボタンをなくして、 Wicket に関連付けられていないFormシンプルなままにしておくこともできます。<input type="submit" />

于 2012-10-29T12:51:13.170 に答える
0

Wicket AjaxButtons は、要素に onclick イベントを追加することで機能します。ウィケットが生成する onclick イベント ハンドラに干渉する可能性のある js ライブラリはありますか? プレースホルダー プラグインに問題があったことを思い出します。

オプション 2: AjaxFallbackButton?を使用

于 2012-10-30T21:37:09.130 に答える