所以问题很简单,我有一个Angular文本框,上面附加了一个Ui-Bootstrap type,当用户失去对它的关注时,将触发验证函数并验证在字段中输入的值是否正确,问题是就是当用户单击建议的下拉菜单中的值时,文本框失去焦点,因此在onSelect函数之前触发onBlur函数并验证错误的数据。我知道已经问过这个问题,但是我似乎找不到在onBlur函数中不包含超时的答案。这是我的代码:
我已经尝试添加
typeahead-focus-on-select = 'false'
但是在HTML组件中,焦点仍然丢失,因为此选项仅使焦点集中在打字头上,但仍丢失在文本框上
这里是我的代码:
<input type='text' ng-class="textBoxClass"
ng-model='savedValue'
ng-change = "onChange()"
style="width:350px;"
ng-disabled = "enabledMode"
typeahead-on-select = 'onItemSelected($item)'
typeahead-focus-on-select = 'false'
typeahead-select-on-exact = "true"
typeahead = 'item as item.name for item in search($viewValue)'
ng-blur = "onFocusOut($event)"
/>
onFocusOut是在onItemSelected之前调用的,我不能这样做,我强烈坚持这一点,请对模糊函数使用超时。我无法添加typehead-select-on-blur = "true"
,因为验证功能会失去目的
任何帮助将不胜感激