代码之家  ›  专栏  ›  技术社区  ›  user944513

AngularJS-如何点击按钮获取对象

  •  0
  • user944513  · 技术社区  · 7 年前

    我有一个物体阵列。我把名字显示在输入栏里。现在我想更新的对象(无论用户填写在输入字段)按钮点击

    例如,如果我进入 abcde和pq 在输入字段中,单击按钮时应显示更新对象

    [
        {
          name:'abcde’
        },
        {
          name:'pq'
        }
        ];
    

    http://plnkr.co/edit/51BlTe5tAEgMV7ZlJLKV

    var app = angular.module('plunker', []);
    
    app.controller('MainCtrl', function($scope) {
      $scope.name = 'World';
      $scope.c = [
        {
          name:'abc'
        },
        {
          name:'pqr'
        }
        ];
    
        $scope.onclick =function(){
    
          alert('dd')
          console.log($scope.c)
        }
    
    });
    
    2 回复  |  直到 7 年前
        1
  •  2
  •   rjv    7 年前

    使用 ng-model 在模板中

    <li ng-repeat="x in c">
      <input type="text" ng-model='x.name' value="{{x.name==='abc'?'ddd':'hhh'}}"/>
    </li>
    

    如果你需要更新 $scope.c 单击按钮时,使用 ng模型 并将相同的 $scope.c.范围 在里面 onclick

    还要注意的是,ng模型并不依赖于 value ,所以 x.name==='abc'?'ddd':'hhh' 单击 或 ng-change 事件处理程序

        2
  •  0
  •   Dipal    7 年前

    你也可以试试这个。

     <li ng-repeat="x in displayValue">
          <input type="text" ng-model='x.name' ng-change='valueChanged(x.name,$index)'/>
     </li>
    

    app.controller('MainCtrl', function($scope) {
      $scope.name = 'World';
      $scope.displayValue = [
        {
          name:'abc' == 'abc'? 'hhhh' : 'dddd'
        },
        {
          name:'pqr' == 'abc'? 'hhhh' : 'dddd'
        }
        ];
    
      $scope.actualValue = [
        {
          name: ''
        },
        {
          name:''
        }
        ];
    
        $scope.valueChanged =function(value,index)
        {
          $scope.actualValue[index].name =  value;
        }
    
        $scope.onclick =function(){
    
          console.log($scope.actualValue)
        }
    
    });