【发布时间】:2017-09-16 20:16:24
【问题描述】:
我已经为选定的网格行创建了一个剑道网格和一个自定义表单。 使用 AngularJS,我将选定的行数据存储到“formData”变量中。 例如
$scope.fromData = { uid: guid, id: guid, name: string, otherEntityId: guid }
现在在我的表单中,我有一个用于“otherEntityId”的 KendoDropDown 输入。 使用 dataTextField 和 dataValueField,我想查看其他数据源并根据外键显示其他属性。
dataTextField: "Name",
dataValueField: "otherEntityId",
例如,我有一个实体人 { id:guid,名称:字符串,cityId:guid} 与另一个实体城市 { 名称:字符串,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() };
怎么办?如何更改打开事件的数据源过滤器?
【问题讨论】:
标签: drop-down-menu kendo-ui datasource large-data