为什么在AngularJS中获得这样的值[1]

为什么在AngularJS中获得这样的值[1],angularjs,asp.net-core-mvc,Angularjs,Asp.net Core Mvc,我需要从表中获取id,但我获取的id是这样的[1]。我只需要获取1 控制器 public JsonResult GetLineManagerId(string LineManagerId) { var lineManagerId = db.Employees .Where(x => x.FirstName == LineManagerId) .Select(x =>x.Id); return Json(lineMa

我需要从表中获取id,但我获取的id是这样的
[1]
。我只需要获取
1

控制器

 public JsonResult GetLineManagerId(string LineManagerId)
        {
var lineManagerId = db.Employees
       .Where(x => x.FirstName == LineManagerId)
       .Select(x =>x.Id);
            return Json(lineManagerId);
        }
棱角的

$scope.GetLineManagerId = function (LineManagerId) {
            $http.get('/Official/GetLineManagerId?LineManagerId=' + LineManagerId).then(function (data) {
                console.log(data);
                $scope.lineManagerId = data.data;
                $scope.empModel.lineManagerId = $scope.lineManagerId[0].lineManagerId;

            });
        };
html


{{lineManagerId}}
当我点击第一个下拉列表时,我会得到如下id
[1]
。。我只需要像这样获取编号
1


我需要在下拉列表中获取id号,如果有人帮助我在文本输入中获取id,而不是使用下拉列表。

您返回的是数组/枚举,而不是单个值

public JsonResult GetLineManagerId(string LineManagerId)
{
    var lineManagerId = db.Employees
       .Where(x => x.FirstName == LineManagerId)
       .Select(x =>x.Id); // returns an IEnumerable<T> for whatever Id is

    return Json(lineManagerId);
}

返回的是数组/枚举,而不是单个值

public JsonResult GetLineManagerId(string LineManagerId)
{
    var lineManagerId = db.Employees
       .Where(x => x.FirstName == LineManagerId)
       .Select(x =>x.Id); // returns an IEnumerable<T> for whatever Id is

    return Json(lineManagerId);
}

试试这个,请不要使用ng单击此处

 <select ng-model="empModel.name" id="" name="Name" class="form-control" 
                                    ng-change="GetLineManagerId(empModel.name)"
                                    ng-options="d.name as d.name for d in name">
                                <option></option>

使用以下命令加载linemanager

  <select ng-model="empModel.id" id="" name="Id" class="form-control"
                                ng-options="d.lineManagerId as d.lineManagerId for d in lineManagerId"
                                  >
                             <option></option>   
                            </select>  


您的其他部分将保持不变,我想

试试这个,请不要使用ng单击此处

 <select ng-model="empModel.name" id="" name="Name" class="form-control" 
                                    ng-change="GetLineManagerId(empModel.name)"
                                    ng-options="d.name as d.name for d in name">
                                <option></option>

使用以下命令加载linemanager

  <select ng-model="empModel.id" id="" name="Id" class="form-control"
                                ng-options="d.lineManagerId as d.lineManagerId for d in lineManagerId"
                                  >
                             <option></option>   
                            </select>  


您的其他部分将保持不变,我想

您可以指导我如何在文本输入中获取id吗?它工作正常,但在选择名称时如何获取默认值?当前,当我选择名称时,我会在下拉列表中获得第一个值,但第一个值始终为空,第二个值为id。您可以指导我如何在文本输入中获得id吗?工作正常,但当我选择名称时,如何获得默认值?当前,当我选择名称时,我会在下拉列表中获得第一个值,但第一个值始终为空,第二个值为idits,工作正常,但当我选择名称时,如何获得默认值?当前,当我选择“名称”时,我会在下拉列表中找到第一个值,但第一个值始终为空,第二个值为ID。您是否根据我的答案进行了更新,还是想按自己的方式进行尝试?我这样问是因为想知道代码的当前状态。另一件事是您的第一个下拉列表加载是否正确?我ddi与您的代码完全一样一切看起来都很好,但我没有显示在dropdownangular
$scope.GetLineManagerId=function(LineManagerId){$http.get('/Official/GetLineManagerId?LineManagerId='+LineManagerId)。然后(函数(数据){console.log(数据);$scope.lineManagerId=data.data;})
工作正常,但我如何在选择名称时获得默认值?当前,当我选择名称时,我会在下拉列表中获得第一个值,但第一个值始终为空,第二个值为ID。您是否根据我的答案进行了更新,或者您想以自己的方式进行尝试?我之所以这样问,是因为我想知道代码的当前状态。另一件事是您的第一个下拉列表加载正确ly?i ddi与您的代码完全一样一切看起来都很好,但id没有显示在dropdownangular
$scope.GetLineManagerId=function(LineManagerId){$http.get('/Official/GetLineManagerId?LineManagerId='+LineManagerId)。然后(function(data){console.log(data);$scope.lineManagerId=data.data;});