通过选择复选框更新范围

Update Scope by selecting checkboxes

我有两个 table,我想通过使用 table 行中的单个 select 下拉列表或通过 select 多个复选框和批量来过滤更新范围。

用户应该能够检查记录,select 顶部下拉状态,然后范围得到更新。如果状态大于或等于 1,则进入一个 table,如果小于或等于 1,则进入另一个 table.

Fiddle http://jsfiddle.net/TheFiddler/hxz06sd7/

如何使用复选框根据 selected 值更新选中的值?

select

 <select ng-options="item.value as item.displayName for item in StatusDropDown" ng-model="person.status" ng-change="updateSelected()"></select>

updatedSelected 应采用选中的行并进行过滤:

$scope.updateSelected = function(statusarg){
            //how to set status for selected and update tables

}

将 ng-model (person.selected) 关联到复选框和 on-change,根据所选 属性 过滤掉它们,然后将 value 应用于它们。

$scope.updateSelected = function (statusarg) {
    //how to set status for selected and update tables
    angular.forEach($scope.people, function(person){
        person.selected && (person.status = statusarg);
    });
}

Fiddle

您的代码的早期问题是:您不应将 track byselect as 语法一起使用,它们不能一起工作。您很少需要将 track by 与 ng-options 一起使用。 Read this了解更多详情。