2016-03-19 6 views
0

私はGWT SuggestBoxを持っています。アイテムを選択すると、データベースから選択したアイテムを取得します。私のコードは次のとおりです。GWT SuggestBoxがValueChangeHandlerの正しい値を返さない

suggestionBoxScoutNumber.addValueChangeHandler(new ValueChangeHandler<String>() { 
      public void onValueChange(ValueChangeEvent<String> event) { 
       if (suggestionBoxScoutNumber.getText().length() != 0) { 
        //Look for Youth Member and display details if found 
        // and error message if not found. 
        suggestionBoxScoutNumber.setStyleName("gwt-TextBox"); 
        Window.alert("suggestionBoxScoutNumber.getText() = " + suggestionBoxScoutNumber.getText()); 
        AsyncCallback<YthMmbrSectDtls> callback = new GetYMHandler<YthMmbrSectDtls>(EditYouthMemberView.this); 
        rpc.getYouthMemberSection(accountId, null, null, suggestionBoxScoutNumber.getText(), callback); 
       }else{ 
        suggestionBoxScoutNumber.setStyleName("gwt-TextBox"); 
       } 
      } 
     }); 

私は「1」の値「123」と「912234」が表示されて入力した場合。私は "123"を選択し、 "Window.alert"は "123"の代わりに "1"を表示します。したがって、選択した値はデータベースではありません。

+1

「if」ステートメントの外に、またはValueChangeHandlerの外にも 'suggestionBoxScoutNumber.setStyleName(" gwt-TextBox ");を移動します。あなたはそれがまったく必要ないかもしれません。 –

答えて

0

getValue()を使用してください。getText()ではありません。

+0

こんにちはアンドレイさん、ありがとうございました。ただし、同じ結果 - "1"が返されます。 – Glyn

+0

'event.getValue()'には何が表示されますか? –

+0

こんにちはアンドレイ、私は '1'を参照してください。 '123'にする必要があります。 – Glyn

関連する問題