2

次のリンクに表示される例を使用しようとしています: http://www.mysticcoders.com/blog/autocomplete-with-an-object/

問題は何も起こらないことです...テキストフィールドに何かを入力し始めても何も起こりません。デバッグしたところ、ビルダーとレンダラーが起動していないようです。

なぜ何も起こらないのか誰か教えてください。

私は Wicket 6.2.0 バージョンを使用しています。

4

5 に答える 5

4

バージョン 6.0 以降の Wicket には、独自のバージョンの jQuery がバンドルされています (Wicket 6.5.0 では jQuery v1.8.3)。

独自の jQuery を読み込まないようにしてください。

以前は、Wicket 1.5.9 を使用しながら、(RequireJS を使用して) 独自の jQuery をロードしていました。そして突然、Wicket 6.5.0 (実際には Pax Wicket 2.1.0) にアップグレードした後、AutoComplete (とりわけ) が機能しなくなりました。

私の解決策は、バンドルされている jQuery を使用し、独自の jQuery を読み込まないようにすることでした。

RequireJS を使用して jQuery をロードする場合は、次のように jQuery モジュールをダミー モジュールに「置き換え」ます。

define([], function() {
    return jQuery;
});

そのため、RequireJS を使用して jQuery をロードする他のモジュールは引き続き機能します。

于 2013-02-18T10:49:22.500 に答える
1

自動補完、複数選択などの非常に優れた機能を提供する Igor Vaynberg のWicket-Select2プロジェクトを調査する必要があります。特に、Gmail の新しいメールに受信者を追加するなどのことについて言及したように、この例に基づいたものを使用することを検討する必要があります。

于 2013-01-24T13:18:49.930 に答える
0

@Rudi Wijavaが言ったように、jQueryのバージョンの問題である可能性があります。

私のプロジェクトでも同じ問題がありますが、Wicket が提供する以上のスキンが必要な jQuery couse スキンのバンドル バージョンを使用できません。しかし、それは簡単な解決策です。アプリケーション設定では、次のように jQuery 参照を独自に設定できます。

  jQueryLibrarySettings.setJQueryReference(new UrlResourceReference(Url.parse(contextPath
        + "/static/js/libs/jquery-2.0.2.min.js")));

WebApplication クラス http://ci.apache.org/projects/wicket/apidocs/6.0.x/org/apache/wicket/protocol/http/WebApplication.htmlを拡張するクラスでこれを行うことができます

于 2015-03-08T23:05:16.930 に答える
0

コードを提供できますか?

AutoCompleteTextFieldを使用しましたか? この場合、オートコンプリート リストを定義する CSS クラスをスタイルシートに追加する必要があります。

このクラスをテストするには、DefaultCssAutoCompleteTextFieldを選択します。これはすぐに使用できます。getChoices メソッドを実装するだけです。

于 2013-01-23T18:52:49.023 に答える