我对AngularJS相当陌生,可以使用一些帮助来解决以下问题:我有一个包含大量列和输入元素的表。每当用户更改输入元素的值时,我希望行设置为“编辑”。我通过向每个输入元素添加ng-change指令来实现这一点:
<table>
<tr data-ng-repeat="item in vm.Model.data">
<td>
<input type="text" ng-model="item.Title" ng-change="item.changed=true" />
</td>
.
.
</tr>
</table>
字符串
这个解决方案的问题是,我有很多列,我必须为每个'input'元素编写ng-change指令。有没有一种方法可以在'tr'元素的级别上捕获任何input元素的更改事件?
2条答案
按热度按时间3lxsmp7m1#
您可以编写自己的指令来侦听
onchange
事件冒泡(ngChange指令在这种情况下不起作用)。字符串
并使用它:
型
示例:http://plnkr.co/edit/lzIQ00l7aqXYlNCekWY8?p=preview
nnt7mjpx2#
我会在我的项目上创建一个名为IsChanged的方法,它返回true/false。使用它来尝试“编辑”状态。在该方法中,使用您关心的每个项目属性的$dirty state来确定行是否“更改”。
就像...
字符串