【问题标题】:javascript Angularjs get single value from arrayjavascript Angularjs从数组中获取单个值
【发布时间】:2016-09-27 09:14:12
【问题描述】:

我对 angularjs 很陌生,不知何故我无法解决。

它从 json 数组中获取单个值,然后将其放入范围变量中。假设刚刚从 php 查询中得到一个数组,看起来像这样(打印视图):

array(
[name]   => John Doe,
[age]    => 29,
[gender] =>male);

然后通过这个作用域变量添加:

$scope.profile = response.data;

如何从该数组中选择一个值,然后将其放置在单独的范围变量中?

$scope.name; $scope.age; $scope.gender;

【问题讨论】:

  • 尝试response.data.nameresponse.data['name']并将其分配给$scope.name
  • 我试过了,没用。看来我需要先将它从 json 传输到对象。
  • 在 javascript 中解析 json 对象或尝试以 json_encoded 格式发送 php 数据
  • 使用该方法解析jsonJSON.parse(response);并存入变量
  • 我试过这个:$scope.profile = JSON.parse(response);甚至 $scope.profile = JSON.parse(response.data);但它没有返回任何东西。

标签: javascript php arrays angularjs scope


【解决方案1】:
$scope.name = response.data.name;
$scope.age = response.data.age;
$scope.gender = response.data.gender;

这应该将它们添加到$scope

确保元素在对象中,不再是 JSON 字符串。

或者如果你和你已经拥有的另一个人住在一起:

$scope.name = $scope.profile.name;
$scope.age = $scope.profile.age;
$scope.gender = $scope.profile.gender;

【讨论】:

  • 元素仍在 JSON 字符串上。怎样才能先转让呢?
  • JSON.parse(stringToParse);
  • 我试过了,但它不起作用。它也没有返回任何东西。
【解决方案2】:

使用json_encode从您的 PHP 发回您的数据

return json_encode($array);

然后它会给你

object {
 name: 'John Doe',
 age: '29',
 gender: 'male'
} 

然后您可以使用以下方式访问它:

$scope.profile = response.data;
//
$scope.name   = $scope.profile.name;
$scope.age    = $scope.profile.age;
$scope.gender = $scope.profile.gender;

示例:

var app = angular.module('someApp', [])
  .controller('someCtrl', function ($scope) {
    
    var object = {
      name: 'John Doe',
      age: '29',
      gender: 'male'
    };

    $scope.profile = object;
    
    $scope.name   = $scope.profile.name;
    $scope.age    = $scope.profile.age;
    $scope.gender = $scope.profile.gender;
    
  });
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<div ng-app="someApp" ng-controller="someCtrl">{{name}}, {{age}}, {{gender}}</div>

【讨论】:

    猜你喜欢
    • 2017-02-19
    • 2014-04-21
    • 2015-09-13
    • 1970-01-01
    • 1970-01-01
    • 2020-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多