我有以下活塞http://plnkr.co/edit/wYzXkL2VEpJIYGv353tn?p=preview
如果你点击Open Modal,你会看到3个输入字段。第一个是名为"选择状态"的自动完成输入框。第二个是名为'RestName'的下拉菜单,第三个是名为'Name'的输入字段
我想做以下事情。如果用户开始在"选择名称"的输入栏输入"a",就会弹出一个自动完成的值。它的值弹出'Alabama, Alaska, Arizona'
请注意。当用户输入"a"时,"Name"输入字段立即更新为"Rick"。这是因为这里的这个函数....
$scope.get_change = function(value) {
$scope.selectedState = value;
$scope.updatedName = 'rick';
}
我想在用户离开第一个输入框后才更新'Name'值,而不是直接更新我们键入的任何值。比如模糊之类的。
我试图使用一个指令,其中ng-change仅在用户模糊出第一个输入字段时发生。如果我们使用指令,更新工作得很好。自动完成功能停止工作,如果我使用这个指令…
有人可以让我知道如何更新'名称'后,用户已经退出第一个输入字段,而不是当用户在第一个输入字段输入值.....
您应该考虑ng-model-options。
<label>Name:
<input type="text" name="userName"
ng-model="user.name"
ng-model-options="{ updateOn: 'blur' }"
ng-keyup="cancel($event)" />
</label><br />
来源:https://docs.angularjs.org/api/ng/directive/ngModelOptions