DropDownChoice를 사용 중입니다. 해당 키와 값은 User 개체의 username 속성입니다. 하지만 내가 제출할 때 다음 오류가 발생합니다. 클래스에 대해 정의 된 메소드가 없습니다. class java.lang.String 표현식 : username.wicket DropDownChoice 클래스에 대해 정의 된 get 메서드가 없습니다.
양식을 제출할 때 SearchPerson 개체의 name 속성에 양식 입력을 설정하고 사용자 (사용자 목록)를 사용하여 드롭 다운을로드하고 싶습니다. 내 선택 상자의 디스플레이와 값은 당신이 String
특성 (searchPerson.name
) 내로 User
을 주입하려는
<select name="select" wicket:id="name" id="select">
<option value="test">test</option>
</select>
form.add(new DropDownChoice("name",new PropertyModel(searchPerson, "name"),users,new ChoiceRenderer("username", "username")));
답장을 보내 주셔서 감사합니다. 그러나 위켓과 관련하여 그것은 의미가 없습니다. 내 상황에서는 검색 페이지가 있으며 검색, startDate, endDate, username 등의 각 필드를 나타내는 개체가 있고 사용자 이름 드롭 다운을 원한다면 모든 사용자와 목록을 만들거나 IModel 을 드롭 다운에 할당 한 다음 그 값을 내 검색 개체로 추출하십시오. 선택 목록의 전체 아이디어는 선택 옵션 값, 선택 항목의 이름에 문자열을 밀어 넣는 것입니다. 응답에 대해 다시 한 번 감사드립니다. 직접적으로 계산하지 않았을 것입니다. –
user373201
DropDownChoice를 사용하면 theuser에서 하나의 객체를 선택할 수 있습니다. 명부. 나는 당신이 선택한 객체를 설정하기 위해 사용하는 속성이 같은 유형이라는 것을 이해한다고 생각합니다. 원하는 것이 텍스트 필드의 자동 완성이면 wicket-extensions에서 DefaultCssAutocompleteTextField를 시도해 볼 수 있습니다. 그리고 사용자 목록을 메모리에 반복하는 대신 사용자 대신 직접 사용자 이름을 데이터베이스 (최대 절전 모드)로 쿼리 할 수 있습니다. – tetsuo