我正在显示下拉列表,下拉列表中显示如下值。
我想要做的是获取所选值的ID并传递给api,但我无法获得id和value.can任何人都建议我如何获取值表格下拉列表。
<select>
<option value="" selected="selected">Choose One</option>
<option value="id2">value2</option>
<option value="id1">value1</option>
</select>
我的代码是:
final DropDownChoice<V> v1 = new DropDownChoice<V>("v1",
new PropertyModel<V>(loc,"id"), getValueList(),
new ChoiceRenderer<V>("name", "id"));
v1.add(new OnChangeAjaxBehavior() {
@Override
protected void onUpdate(AjaxRequestTarget target) {
if (loc.getId() != null) {
System.out.println("DDDDDDDD"+loc.getId());
System.out.println("DDDDDDDD"+loc.getValue`enter code here`);
}
}
});
答案 0 :(得分:2)
在其模型中设置的值DropDownChoice
不是id
,而是选定的V
本身。因此,IModel
(在这种情况下,PropertyModel
)应指向V
类型的属性。
假设loc
是this
的属性,请尝试替换
new PropertyModel<V>(loc, "id")
与
new PropertyModel<V>(this, "loc")