每个都有 2 个可观察的集合
for each with 2 observable collections
我有一个团队和排名得分集合要跟踪,比如说接力赛。
因此,当用户将团队输入集合时,每个团队将根据排名获得积分。
https://jsfiddle.net/2ae3dv8d/
<strong>Teams:</strong>
<!-- ko foreach: teams -->
<div>
<input type="text" data-bind="value: name" />
</div>
<!-- /ko -->
function Team(name)
{
var self = this;
self.name = name'
}
function RankScoring(label, points){
var self = this;
self.label = label;
self.points = points;
}
function AppViewModel()
{
var self = this;
self.teams = ko.observableArray([
new Team('red'),
new Team('blue')
]);
self.rankscoring = ko.observableArray([
new RankScoring('1st', ''),
new RankScoring('2nd', ''),
new RankScoring('3rd', ''),
]);
}
在这个特定示例中,假设游戏有 2 支球队。因此,我只需要根据所涉及的团队数量使用 RankScore 集合中的 2 个项目。如何对排名评分集合进行数据绑定,以便用户可以输入排名分数?我欢迎关于实现这个想法的更简单方法的建议。
**Teams:**
Red
Blue
**Scoring**
1st place - 10
2nd place - 5
添加一个计算以显示可用排名的文本框:
self.availablerankscoring = ko.computed(function(){
return self.rankscoring().slice(0,self.teams().length);
});
为可用等级添加另一个 foreach:
<!-- ko foreach: availablerankscoring -->
<div>
<label data-bind="text: label"></label><input type="text" data-bind="value: points" />
</div>
<!-- /ko -->
小提琴
相关文章:
- knockoutjs可观察数组
- 如何使jQuery插件函数可调用以供独立使用,而不在集合上操作
- Meteor-将选定窗体中的对象添加到集合中
- 主干集合重置和解析
- 使用数据上的角度更改设置集合的第一个元素的动画
- 为集合分配大量的模型弹药
- 如何使用backbone.js从集合中获取模型名称
- Lodash从集合创建集合
- 多次发射多个可观察器的问题
- 2个backbone.js集合,具有相同的模型,但排序顺序不同
- 流星:用 reactiveVaR 观察集合
- 将值推送到可观察数组集合
- 更改一个对象的可观察属性会更改集合中所有对象的属性
- 每个都有 2 个可观察的集合
- 如何拥有一个可观察的集合,该集合可以从两个源进行更新,而不会在knockout.js中引起循环
- Javascript中的可观察集合
- 属性和集合观察者在Aurelia中没有引发propertyChanged事件
- 使用Knockout Validation验证集合中的可观察对象
- 带有对象集合的Json数据被映射为可观察的,而不是可观察的数组
- KnockoutJS绑定未使用可观察集合进行更新