角度ng-repeat - 在焦点上调用ng-blur

时间:2018-01-09 17:18:26

标签: angularjs

我有一群人,我正在使用ng-repeat

创建一个基于该集合的网格
<tr class="odd gradeX" ng-repeat="person in ctrl.people" name="innerForm" ng-form>

其中两个数据行的输入元素上有ng-blur

<td>
    <input id="firstname_{{$index}}"
           class="lower-grid-large-input"                                               
           ng-blur="ctrl.PersonBlur('FirstName', person, $event)"
           ng-model="person.FirstName"
           ng-change="ctrl.PersonChange('FirstName', person)" />
</td>
<td>
    <input id="lastname_{{$index}}"
           class="lower-grid-large-input"
           ng-blur="ctrl.PersonBlur('LastName', person, $event)"
           ng-model="person.LastName"
           ng-change="ctrl.PersonChange('LastName', person)" />
</td>

当我从名字到姓氏时 - 通过标签(不重要),名字模糊被调用,即使我只是把焦点放在它上面而我没有留下那个输入。

基本上,当我留下第一个名字输入时,我会得到两个模糊调用。这导致了禁用选项卡keydown以及我们实现甜蜜警报的一些其他问题。

预期行为

第一个名字我改变,编辑或添加 - 我选择了这个输入并调用了模糊 - 一些工作在幕后发生 - 焦点现在是姓氏输入。

然后我对姓氏输入做了一些工作 - 当我选中该输入时,会调用它的模糊,并在幕后对其数据进行一些工作。

当前行为

第一个名字输入完成了一些工作 - 当我选择模糊时调用模糊 - 所以工作已经完成---但是名字模糊也被称为 - 并且这项工作也已完成。焦点确实移动到姓氏输入但是调用了模糊。

0 个答案:

没有答案