Javascript AngularJS在ng repeat中以当前迭代中的元素为目标

Javascript AngularJS在ng repeat中以当前迭代中的元素为目标,javascript,angularjs,angularjs-ng-repeat,Javascript,Angularjs,Angularjs Ng Repeat,我确信这个问题已经以这样或那样的形式被回答了无数次,但是我不确定要寻找什么来找到解决办法 假设我们有一个简单的ng重复: <div ng-repeat="item in items"> <input type="text" value="{{item.name}}"> <a ng-click="getTxtBoxVal(whatDoIPassInHere)">Get Text Box Value</a> </div> 基本

我确信这个问题已经以这样或那样的形式被回答了无数次,但是我不确定要寻找什么来找到解决办法

假设我们有一个简单的ng重复:

<div ng-repeat="item in items">
   <input type="text" value="{{item.name}}">
   <a ng-click="getTxtBoxVal(whatDoIPassInHere)">Get Text Box Value</a>
</div>
基本上,我想知道在
whatDoIPassInHere
参数中应该传递什么,在jquery中,该参数类似于:
$(this).sillides(input).val()


我有一个解决办法,就是给每个文本框一个唯一的ID:


您没有将输入与模型关联,因此angular不知道如何引用该值

控制器

$scope.things = [
    {
      'name': 'apple',
      'value': '12',
      'isTasty': true
    },
    {
      'name': 'tire',
      'value': '7',
      'isTasty': false
    },
    {
      'name': 'carrot',
      'value': '9',
      'isTasty': false
    },
    {
      'name': 'cake',
      'value': '1',
      'isTasty': true
    }
  ];

  $scope.getVal = function (value) {
    alert(value);
  };
查看

<div ng-repeat="item in things">
      <input type="text" ng-model="item.name" value="{{item.name}}">
      <a href="#" ng-click="getVal(item.name)">Get Text Box Value</a>
    </div>

如果您来自jquery,这是一本很棒的读物。但是给你一个小小的指导:你需要使用
ng model=“item.name”
而不是
value=…
。然后你只需传递
项目
来代替
WhatDoipassinher
@csbarnes谢谢你的帖子。
<div ng-repeat="item in things">
      <input type="text" ng-model="item.name" value="{{item.name}}">
      <a href="#" ng-click="getVal(item.name)">Get Text Box Value</a>
    </div>