Knockout.js 带有标题和id的选项
我正在将标题和Id的筛选值推送到我的getItem数组:Knockout.js 带有标题和id的选项,knockout.js,Knockout.js,我正在将标题和Id的筛选值推送到我的getItem数组: self.selectItem = ko.computed(function() { return ko.utils.arrayFilter(self.loanItems(), function(item) { if (item.Location() == self.userLocation() && item.LoanItem() == self.selectedL
self.selectItem = ko.computed(function() {
return ko.utils.arrayFilter(self.loanItems(), function(item) {
if (item.Location() == self.userLocation() && item.LoanItem() == self.selectedLoanType() && item.Status() == "Available") {
self.getItem.push(item.Title(), item.Id());
}
});
});
然后在我的视图中,我想填充我的选择输入,对于选择,我想显示标题和Id作为一个值:
<select data-bind="options: getItem,
optionsText: 'Title',
optionsValue: 'Id',
optionsCaption: 'Select an item...',
value: selectedLoanTitle">
</select>
上面的操作不起作用,请参见下面的屏幕
在
选项
数据绑定中,输入一个(可观察的)项目数组。options文本
和options值
数据绑定指的是每个项目中的属性名称
构建数据绑定的方式要求getItem
数组中的项同时具有Id
和Title
属性
在您的selectItem
方法中,您使用两个参数调用push
,我猜这就是出错的地方。您正在将两个(假定)字符串推送到数组中
尝试按以下任一按钮:
self.getItem.push(项目)
),或self.getItem.push({Title:item.Title,Id:item.Id})
)还请注意,
selectedLoanTitle
最终将具有一个Id
属性值,而不是选项中的标题
。数据绑定您输入的(可观察的)项数组。options文本
和options值
数据绑定指的是每个项目中的属性名称
构建数据绑定的方式要求getItem
数组中的项同时具有Id
和Title
属性
在您的selectItem
方法中,您使用两个参数调用push
,我猜这就是出错的地方。您正在将两个(假定)字符串推送到数组中
尝试按以下任一按钮:
整个项目(self.getItem.push(项目)
),或
具有所需属性的对象(self.getItem.push({Title:item.Title,Id:item.Id})
)
还请注意,selectedLoanTitle
最终将具有一个Id
属性值,而不是Title
。请显示您的视图模型。需要查看如何设置getItem请显示视图模型。需要看看你是如何设置getItem的非常感谢,选项2正是我所需要的。非常感谢,选项2正是我所需要的。