更新“简单”列表框ZK

时间:2012-06-12 06:45:51

标签: listbox zk

我想在点击提交按钮时更新列表框。列表框最初由一个JSONObject列表组成,点击提交按钮后,列表元素发生了变化,列表框应该随更改而更新,但我不能这样做。你能帮助我更新列表框吗?

这就是我将JSONObject列表放在列表框中的方式

<listbox id="userListbox">
<listhead>
    <listheader label="Id"></listheader>
    <listheader label="Name"></listheader>
    <listheader label="Address"></listheader>
    <listheader label="Phone"></listheader>
</listhead>
<listitem forEach="${userController.list}">
    <listcell label="${each.id}" ></listcell>
    <listcell label="${each.name}" ></listcell>
    <listcell label="${each.address}" ></listcell>
    <listcell label="${each.phone}" ></listcell>
</listitem>

类UserController中的

private List<JSONObject> list;

@Listen("onClick = #submitButton")
public void onSubmit(Event event) {
    loadUser();
}

private void loadUser() {
    JSONObject input = new JSONObject();
    input.put("name", nameBox.getText());

    list = getUserList(input);
}

public List<JSONObject> getList() {
    return list;
}

public void setList(List<JSONObject> list) {
    this.list = list;
}

我不知道如何更新列表框?谢谢你的帮助。

1 个答案:

答案 0 :(得分:1)

类UserController中的

private List<JSONObject> list;
Listbox userListbox;
@Listen("onClick = #submitButton")
public void onSubmit(Event event) {
    loadUser();
}

private void loadUser() {
    JSONObject input = new JSONObject();
    input.put("name", nameBox.getText());

    list = getUserList(input);
    userListbox.setModel(list);
    userListbox.set//Your own item renderer
}

public List<JSONObject> getList() {
    return list;
}

public void setList(List<JSONObject> list) {
    this.list = list;
}

我不知道如何更新列表框?谢谢你的帮助。