docs说
updateOn:指定输入绑定到哪个事件的字符串。您可以使用空格分隔列表设置多个事件。有一个名为default的特殊事件与属于控件的默认事件匹配。
该页面提到了一些事件:blur
,default
,submit
。还有其他人吗?完整列表是否记录在何处?
据我所知,您可以将任何可用的DOM事件绑定到updateOn
属性。查看完整列表here。
看一下ngModel
的来源,你可以看到传递给updateOn
的选项将被绑定到实际的元素本身。
https://github.com/angular/angular.js/blob/master/src/ng/directive/ngModel.js#L1188
角度来源:
if (modelCtrl.$options.getOption('updateOn')) {
element.on(modelCtrl.$options.getOption('updateOn'), function(ev) {
modelCtrl.$$debounceViewValueCommit(ev && ev.type);
});
}
现在,您可以在更新值或有效性时控制表单(或单个表单元素)。此功能已在AngularJS 1.x中提供,但到目前为止在Angular 2+中未使用。现在可以在Angular 5表单中使用以下更新选项:
更改:更改是默认模式。通过使用此更新选项,每次更改后都会更新表单/表单控件。
模糊:模糊更改模式仅在表单控件丢失焦点后从值/有效性状态更新。
提交:更新仅在表单提交后完成。
完整的来源是here。