エルコム 田中
tanak****@elcom*****
2010年 6月 11日 (金) 12:46:21 JST
田中です。 WicketでAutoCompleteTextFieldを使ってフォームのテキストフィールドにオートコンプリート機能を付けようとしたのですが、ブラウザによって以下(a)(b)のような状態となってしまいます。Wicket のバージョンは1.4です。 原因がわかりません。 (a) IE(Ver.8)の場合 テキストフィールドに文字を入れたタイミングで下記のエラーが出ます。 ----- ↓エラー内容 ----- Web ページ エラーの詳細 ユーザー エージェント: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; GTB6.5; Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1) ; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0) タイムスタンプ: Fri, 11 Jun 2010 03:13:42 UTC メッセージ: システム エラー: -1072896658 ライン: 923 文字: 5 コード: 0 URI: http://127.0.0.1:8080/EwgsWeb/resources/org.apache.wicket.ajax.WicketAjaxReference/wicket-ajax.js ----- ↑エラー内容 ----- (b)Chrome(Ver.5)の場合 エラーは出ず、ローマ字のオートコンプリートはうまくいくのですが、日本語だと候補が表示されません。 ------ ↓ソース------------------------------------------------------------------------------------------------------ ・・・ AutoCompleteTextField widText_torihikisakiName = new AutoCompleteTextField("widText_torihikisakiName", new PropertyModel(seibansakuseiFormVo, "torihikisakiName")) { private List names = Arrays.asList(new String[] { "Japan", "Java", "あああ", "あああい", "うううう", "うううえ", "ううえ" }); protected Iterator getChoices(String input) { List probables = new ArrayList(); Iterator iter = names.iterator(); while (iter.hasNext()) { String name = (String) iter.next(); if (name.startsWith(input)) { probables.add(name); } } return probables.iterator(); } }; widForm_seibanShinkisakusei.add(widText_torihikisakiName); ・・・ ------ ↑ソース------------------------------------------------------------------------------------------------------