Angularjs数组索引未显示

时间:2016-09-22 12:31:18

标签: javascript html angularjs arrays

这可能是一个愚蠢的问题,但我在这篇文章上停留太久了,一双新眼睛可能会看到这个问题。

我有两个数组,一个保存静态数据,另一个暂时保存主数组的单个索引。

我想在弹出窗口中显示临时数组值,如果选择了新索引,则数据应该可以移动到下一个数组值。

  

我的问题是:如果我尝试显示我的固定数组值,它会显示正常,但是   如果我尝试显示临时数组值没有显示。我是   使用完全相同的技术来显示和静态   数组工作。

HTML

  <button type="button" class="btn btn-default btn-block" ng-model="ModelA" ng-click="$ctrl.Id(1);">More Info</button>

//POPUP
<script type="text/ng-template" id="myModalContent.html">
    <div ng-controller="PopupCtrl as $ctrl">
        <div class="modal-header">
            <h2 class="modal-title" id="modal-title">{{$ctrl.array2}}</h2>
        </div>
        <div class="modal-body" id="modal-body">
            <h3>{{$ctrl.array1}}</h3>
            <p>{{$ctrl.array1}}</p>
        </div>
        <div class="modal-footer">
            <button class="btn btn-primary" type="button" ng-click="$ctrl.ok()">OK</button>
            <button class="btn btn-warning" type="button" ng-click="$ctrl.cancel()">Cancel</button>
        </div>
    </div>

</script>

Javasccript 阵列

    $ctrl.array1 = [{id: 1, name: 'name1'},{id: 2, name: 'name2'}]
    $ctrl.array2 = [];

$ctrl.Id = function (ModelA) {
        console.log('ModelA', ModelA);

        for (var i = 0; i < $ctrl.array1.length; i++) {

            if ($ctrl.array1[i].id == ModelA) {
                $ctrl.array2.push($ctrl.array1[i]);

            }
        }
        $ctrl.open('lg');
    }


    $ctrl.open = function (size) {

            var modalInstance = $uibModal.open({

                animation: $ctrl.animationsEnabled,
                ariaLabelledBy: 'modal-title',
                ariaDescribedBy: 'modal-body',
                templateUrl: 'myModalContent.html',
                controller: 'ModalInstanceCtrl',
                controllerAs: '$ctrl',
                size: size,
                resolve: {
                    items: function () {
                        return $ctrl.array2;
                    }
                }
            });

0 个答案:

没有答案