ng-repeat从php获取数组

时间:2014-10-02 06:50:50

标签: php json angularjs ng-repeat

好的,所以这看起来很简单,但显然我错过了一些东西,而且我已经放弃了试图理解什么,我的代码是这样的:

在我的php端我从MySql数据库读取信息,它返回一个json编码的对象:

$rows = array();
        while($row = mysqli_fetch_assoc($result)) {
            $rows[]=$row;
        }    

        echo json_encode($rows);

到我的Angular javascript端,我尝试将这个数组的内容加载到我在我的一个控制器范围内创建的数组中(我有2个)

$scope.CurrentOIDs=[];
            $scope.populate = function () {
                $.ajax({
                    type: 'GET',
                    url: 'getOidJSON.php',
                    data: {criteria: '', archived: 'NO'},
                    success: function (phpmarkup) {
                        $scope.CurrentOIDs = JSON.parse(phpmarkup);   
                        console.log($scope.CurrentOIDs);
                    }
                });
            };

!当检查控制台时,信息显示完美,我得到一个包含50个元素的数组,所有信息都是我需要的,如图所示 - > 1

我尝试使用以下html将所有数据放入表中,

 <div id="quicksearchresults" ng-controller="EditableRowCtrl" data-ng-init="populate()">
    <div id='searchResults'>
        <table id='resultstable'>
            <thead>
               <tr style='background-color:#333333; color:whitesmoke;' class='headers'>
                      <th style='white-space: nowrap;' class='sort' data-sort='OIDid'>OID#</th>
                      <th style='white-space: nowrap;' class='sort' data-sort='priority'>Priority</th>
                      <th style='white-space: nowrap;' class='sort' data-sort='topic'>Topic</th>
                      <th style='white-space: nowrap;' class='sort' data-sort='category'>Category</th>
                      <th style='white-space: nowrap;' class='sort' data-sort='task'>Task</th>
                      <th style='white-space: nowrap;' class='sort' data-sort='added'>Added</th>
                      <th style='white-space: nowrap;' class='sort' data-sort='target'>Target</th>
                      <th style='white-space: nowrap;' class='sort' data-sort='owner'>Owner</th>
                      <th style='white-space: nowrap;' class='sort' data-sort='remarks'>Remarks</th>
                      <th style='white-space: nowrap;' class='sort' data-sort='status'>Status</th>
               </tr> 
            </thead>
            <tbody class='list'>
                <tr ng-repeat='task in CurrentOIDs'>
                    <td class='OIDid'>{{ task.OIDid }}</td>
                    <td class='priority'>{{ task.Priority }}</td>
                    <td class='topic'>{{ task.Topic }}</td>
                    <td class='category'>{{ task.Category }}</td>
                    <td class='task'>{{ task.Task }}</td>      
                    <td class='added'>{{ task.Added }}</td>
                    <td class='target'>{{ task.Target }}</td>
                    <td class='owner'>{{ task.Owner }}</td>
                    <td class='remarks'>{{ task.Remarks }}</td>
                    <td class='status' style='font-size:150%; font-weight:bold;'>{{ task.Status }}%</td>
                </tr>
            </tbody>
        </table> 
    </div>
</div> 

现在我知道当我手动为我的javascript中的数组提供相同的确切值而不是从数据库中读取它们时,这是有效的。我注意到的一个区别是,每个对象都添加了一个字段$$ hashkey,但据我所知,这是因为ng-repeat而添加的。

我对角度的了解仍然是基本的,我不知道为什么这不起作用,并且已经用完了搜索谷歌的东西。任何和所有帮助非常感谢。谢谢。

0 个答案:

没有答案