按钮单击时更新bean属性

时间:2013-07-26 14:46:43

标签: zk

我是ZK框架的新手,并尝试实现一个简单的事情,但ZK的不同方法令人难以置信:

我有一个网格,模型作为人员列表。所有网格字段都是可编辑的文本框,并使用Person的名称和姓氏(2列)填充。我想做的是:

- 实施“全部保存”按钮,该按钮将绑定所有更改的值以尊重人的姓名和姓氏属性。

只需点击“全部保存”,即可保存所有更改的值。但是我不想在按钮点击之前改变任何东西,所以文本框上没有@save,只有@load。

到目前为止我做了什么: - 在文本框的onChange事件中,将文本框的值保存在临时Person对象的属性(名称或姓氏)上,并将该Person添加到changedPersonsList。在SaveAll按钮上单击,将我的模型的Persons替换为changedPersonsList Persons ...但是如果没有实现ID字段,我就无法知道哪个Person。

如果我可以在SaveAll上发送标签值并点击行号,那么一切都会很容易。

1 个答案:

答案 0 :(得分:1)

您可以使用条件关键字 ..

控制数据绑定的时间
<textbox value="@load(vm.text) @save(vm.text, before='saveAll')"/>
<button onClick="@command('saveAll')"/>

这里我们使用before条件来协调何时应该保存值:不是在它正在改变时(正常情况下),而是在即将执行saveAll命令时。

您可以在ZK documentation

中详细了解相关信息