zk:form组合框在添加新对象的事件中不为空



我使用zk框架mvvm方法来添加、编辑对象。当我第一次点击添加按钮时,打开的表单是空的,它运行得很顺利。在编辑列表中的记录后,我得到了预先选择的组合框值,并且已经选择的值不能被选择,否则,我将为null,并且我不能提交表单。这意味着我不能再次选择所选的值来成功进行crud操作。我对每个案例的编辑功能都很好,没有问题,所有文本框和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();

}

我自己已经解决了。

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

相关内容

  • 没有找到相关文章

最新更新