zk:form combobox在添加新对象的事件上不为空

时间:2013-02-13 07:19:59

标签: combobox zk zul

我使用zk框架mvvm方法添加,编辑对象。当我第一次单击添加按钮时,打开表单为空并且运行顺利。从列表中编辑记录后,我得到预先选择的组合框值,并且不能选择已选择的值,否则,我得到null,我无法提交表单。这意味着我不能再次选择值来成功进行crud操作。我的每个案例的编辑功能都运行正常,没有问题,所有textbox和intbox都正常工作

我正在关注这篇文章 http://books.zkoss.org/wiki/Small_Talks/2012/February/MVVM_in_ZK6:_Form_Binding

我有三个对象,newObject,selectedObject和editObject

来自zul文件的表单摘录

    <grid sizedByContent="true"
                                        form="@id('ds') 
                                              @load(vmc.newObject, after='addInvoke') @save(vmc.newObject, before='add') 
                                              @load(vmc.editObject, after='editInvoke') @save(vmc.editObject, before='edit')
                                              @validator('com.example.MyValidator')"
                                               >


<combobox model="@load(ds.unitList)" 
                                                    selectedItem="@bind(ds.abc.unit)" readonly="true" maxlength="50"/>

我从SampleViewModel编辑和添加函数的方法片段如下

    @Command("edit")
    @NotifyChange({ "objectList", "selectedObject", "editObject" })
    @Override
    public void edit() {
        service.editKpi(editObject);
        editObject = null;
    }

@Command("addInvoke")
@NotifyChange("newObject")
@Override
public void onClickAddButton(){

    enableEditMode(false);
    isNewMode = true;

    newObject = new AbcDTO();



}

1 个答案:

答案 0 :(得分:0)

我已经修好了自己。

解决方案也是组合框中的使用值以及selecteditem