PhoneGap中文网

标题: 使用splice()批量删除选中的选项时遇到的问题 [打印本页]

作者: bdqn_wanghaoyu    时间: 2016-1-26 15:00
标题: 使用splice()批量删除选中的选项时遇到的问题
for (var i = 0; i < $scope.portalListData.length; i++) {
    if ($scope.portalListData[i].checked) { //选中的
        $scope.portalListData.splice($scope.portalListData.indexOf($scope.portalListData[i]), 1);
    } else {
    }
}
如上 删除会出现问题,比如选中八个只会删除四个,选中四个删除两个,此处一个解决方法就是 在删除掉本条之后,即   $scope.portalListData.splice($scope.portalListData.indexOf($scope.portalListData[i]), 1);这一句之后加一句 i-- 就可以解决了!
for (var i = 0; i < $scope.portalListData.length; i++) {
    if ($scope.portalListData[i].checked) { //选中的
        $scope.portalListData.splice($scope.portalListData.indexOf($scope.portalListData[i]), 1);        i--;
    } else {
    }
}

作者: admin    时间: 2016-1-27 10:21
这样的话  你循环过滤一下就可以了,不需要再一个一个删除了。

循环过滤的时候,没有选中的放在一个数组/对象,选中的过滤掉

然后在把新数组的值给以前的对象/数组





欢迎光临 PhoneGap中文网 (http://bbs.phonegap100.com/) Powered by Discuz! X3.2