【发布时间】:2015-07-24 01:40:46
【问题描述】:
我确信这个问题已经以一种或另一种形式被多次回答,但是我不确定要搜索什么来找到解决方案。
假设我们有一个简单的 ng-repeat:
<div ng-repeat="item in items">
<input type="text" value="{{item.name}}">
<a ng-click="getTxtBoxVal(whatDoIPassInHere)">Get Text Box Value</a>
</div>
在 javaScript 文件中:
function $scope.getTxtBoxVal(val) {
alert(val)
}
基本上我想知道应该在whatDoIPassInHere 参数中传递什么,在jquery 中类似于:$(this).siblings(input).val()
我确实有一个解决方法是给每个文本框一个唯一的 ID:
<input type="text" id="myTextBox_{{index}}" value="{{item.name}}>
并使用唯一 ID 定位它,但我确信有一种更优雅的方式来处理它
【问题讨论】:
-
如果您来自 jquery,stackoverflow.com/questions/14994391/… 是一本不错的读物。但是给你一点方向:你会想要使用
ng-model="item.name"而不是value=...。然后你只需通过item代替whatDoIPassInHere。 -
@csbarnes 感谢您的帖子。
标签: javascript angularjs angularjs-ng-repeat