首页 > 解决方案 > angularjs:如何访问获取数据结果。现在变得不确定

问题描述

我正在将数据从(实体框架/sql 视图)加载到我的应用程序前端的下拉菜单中。

我能够调用服务器端方法并成功验证结果是否包含我需要的数据。

我在访问数据数组元素的方式上犯了一个错误,我打算用它来填充下拉菜单。我执行完成后,下拉菜单显示“unidefined”37次,也就是GET返回的记录数。

这是我在 Chrome 开发者工具中看到的:

chrome 开发者工具截图

如您所见,我将 data.data 分配给我的 $scope.MeetingListarray。

在 html 视图中我尝试使用 $scope.MeetingList 的内容如下:

            <div>
                <select ng-model="selectedMeeting">
                    <option value="">--Select Meetings--</option>
                    <option ng-repeat="meeting in MeetingList" value="{{meeting.MeetingID}}">{{meeting.MeetingName}}</option>                      
                </select>
            </div>

AngularJS

app.controller('MyController', ['$scope', '$http', '$window', function ($scope, $http, $window) {

    $scope.selectedMeeting = null;
    $scope.MeetingList = [];

    $http({
        method: 'GET',
        url: '/VirtualMeetings/CrossReference/Home/GetMeetingList',
        data: {}
    }).then(function (data) {
        $scope.MeetingList = data;
    });

填充数组并在 html 视图中使用它时,我做错了什么?有人可以告诉我错误,以及正确的编码方式吗?

非常感谢它。

谢谢你。

更新的屏幕截图

第二个屏幕截图 - chrome 开发工具

这对我有用,以便填充下拉菜单/列表

html视图:

                <select ng-model="model.selectedMeeting">                        
                    <option ng-repeat="meeting in MeetingList" value="{{meeting.MeetingID}}">{{meeting.MeetingTitle}}</option> 
                    <option value="">--Select Meeting--</option>                     
                </select>

角js

$http({
    method: 'GET',
    url: '/VirtualMeetings/CrossReference/Home/GetMeetingList',
    data: {}
}).then(function (res) {
    $scope.MeetingList = res.data.data;
});

我需要在数组的分配中再添加一个数据。

标签: javascriptarraysangularjsdrop-down-menu

解决方案


then()of返回一个响应对象,该$http对象具有一个data属性,您可以在其中查看实际服务器发送的数据。

尝试:

$http({
    method: 'GET',
    url: '/VirtualMeetings/CrossReference/Home/GetMeetingList',
    data: {}
}).then(function (res) {
    $scope.MeetingList = res.data;
});

推荐阅读