使用 Knockout/Bootstrap 获取 observableArray 中两个值的值
Get Value of two values in observableArray using Knockout/Bootstrap
我想知道如何从 observableArray 中取出两个值并将它们相除以获得百分比值。我正在尝试将 defectsCompleted/defectsTotal 除以 return 一个百分比值。
这是我拥有的,但它不起作用。有人可以帮忙吗?
function userProfileVM() {
var self = this;
self.userprofile = ko.observableArray([
{ name: 'Bert Bertington', minutesComplete: '284', minutesTotal: '480', defectsCompleted: '254', defectTotal: '546' },
{ name: 'Charles Charlesforth', minutesComplete: '298', minutesTotal: '480', defectsCompleted: '236', defectTotal: '677' },
{ name: 'Denise Dentiste', minutesComplete: '242', minutesTotal: '480', defectsCompleted: '542', defectTotal: '854' }
//Having issues with this part
self.progressWidth = ko.computed(function(){
return self.userprofile.defectsCompleted() / self.userprofile.defectTotal() + '%';
}, self);
}
ko.applyBindings(new userProfileVM());
你得再引入一个viewModel
function UserProfile(name, minutesComplete, minutesTotal, defectsCompleted, defectTotal) {
this.name = name;
this.minutesComplete = minutesComplete;
this.minutesTotal = minutesTotal;
this.defectsCompleted = defectsCompleted;
this.defectTotal = defectTotal;
this.progressWidth = ko.computed(function(){
return this.defectsCompleted / this.defectTotal + '%';
}, this);
}
function MainViewModel() {
this.userprofiles = ko.observableArray([
new UserProfile('Bert Bertington', 284, 480, 254, 546),
new UserProfile('Charles Charlesforth', 298, 480, 236, 677),
new UserProfile('Denise Dentiste', 242, 480, 542, 854)
]);
}
ko.applyBindings(new MainViewModel());
我想知道如何从 observableArray 中取出两个值并将它们相除以获得百分比值。我正在尝试将 defectsCompleted/defectsTotal 除以 return 一个百分比值。
这是我拥有的,但它不起作用。有人可以帮忙吗?
function userProfileVM() {
var self = this;
self.userprofile = ko.observableArray([
{ name: 'Bert Bertington', minutesComplete: '284', minutesTotal: '480', defectsCompleted: '254', defectTotal: '546' },
{ name: 'Charles Charlesforth', minutesComplete: '298', minutesTotal: '480', defectsCompleted: '236', defectTotal: '677' },
{ name: 'Denise Dentiste', minutesComplete: '242', minutesTotal: '480', defectsCompleted: '542', defectTotal: '854' }
//Having issues with this part
self.progressWidth = ko.computed(function(){
return self.userprofile.defectsCompleted() / self.userprofile.defectTotal() + '%';
}, self);
}
ko.applyBindings(new userProfileVM());
你得再引入一个viewModel
function UserProfile(name, minutesComplete, minutesTotal, defectsCompleted, defectTotal) {
this.name = name;
this.minutesComplete = minutesComplete;
this.minutesTotal = minutesTotal;
this.defectsCompleted = defectsCompleted;
this.defectTotal = defectTotal;
this.progressWidth = ko.computed(function(){
return this.defectsCompleted / this.defectTotal + '%';
}, this);
}
function MainViewModel() {
this.userprofiles = ko.observableArray([
new UserProfile('Bert Bertington', 284, 480, 254, 546),
new UserProfile('Charles Charlesforth', 298, 480, 236, 677),
new UserProfile('Denise Dentiste', 242, 480, 542, 854)
]);
}
ko.applyBindings(new MainViewModel());