我已经为选定的网格行创建了一个Kendo Grid和一个自定义Form . 使用AngularJS,我存储到'formData'变量选定的行数据 . 例如
$scope.fromData = { uid: guid, id: guid, name: string, otherEntityId: guid }
现在在我的表单中,我有一个'otherEntityId'的KendoDropDown输入 . 使用dataTextField和dataValueField,我想查看其他数据源并根据外键显示其他属性 .
dataTextField: "Name",
dataValueField: "otherEntityId",
例如,我有一个实体人{id:guid,name:string,cityId:guid}和另一个实体城市{name:string,id:guid}
第一个cityId与第二个实体id相同 .
在我的形式这工作,我有来自第一个数据源的id,在我的输入中,我显示基于id的名称,它就像'查找'字段 .
问题是我的第二个实体的数据源太大,我无法立即加载 .
我想要一种机制,对于网格中的每一行选择,输入将在数据源中发送带过滤器的请求
dataSource.filter = { field: dataValueField, operator: "eq", value: $scope.formDataItem[dataValueField] };
当用户点击查看下拉列表输入的更多选项时,我希望其他过滤器使用'startswith'之类的
dataSource.filter = { field: dataTextField, operator: "startswith", value: getInput().text() };
怎么办呢?如何在open事件中更改数据源的过滤器?
1 回答
我使用过滤事件 . 所以..当我初始化值我在数据源过滤器中使用guid所以只能加载一个项目,当过滤事件调用i更改过滤器并正常工作 .